zoukankan      html  css  js  c++  java
  • MySQL 8.0.12.0数据库连接问题

    1、Java连接MySQL8.0以上版本数据库方式

    1、com.mysql.jdbc.Driver 更换为 com.mysql.cj.jdbc.Driver

    2、MySQL 8.0 以上版本不需要建立 SSL 连接的,需要显式关闭。

    jdbc:mysql://localhost:3306/数据库名?useSSL=false&serverTimezone=UTC
    

    3、 8.0版本的mysql数据的连接 与 5.0的有所不同,下面直接贴出 8.0版本应该有的 jdbc驱动连接,还有 mysql 的jdbc jar包要8.0以上的

    <!-- mysql驱动包依赖 -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.11</version>
        </dependency>
    
    jdbc.driver=com.mysql.cj.jdbc.Driver
    jdbc.url=localhost:3306/数据库名?useSSL=false&serverTimezone=UTC
    jdbc.username=root
    jdbc.password=root
    

    4.测试连接是否成功

    import java.sql.*;
    
    /**
     * @创建人: 鲜耀
     * @项目名: SSMDemo
     * @创建时间: 2019/10/13  13:59
     * @描述:
     */
    public class Test {
        private static Test JDBCUtlTool;
    
        public static Connection getConnection(){
            String driver="com.mysql.cj.jdbc.Driver";  //获取mysql数据库的驱动类
            String url="jdbc:mysql://localhost:3306/test?useSSL=false&serverTimezone=UTC"; //连接数据库(test是数据库名)
            String name="";//连接mysql的用户名
            String pwd="";//连接mysql的密码
            try{
                Class.forName(driver);
                Connection conn=DriverManager.getConnection(url,name,pwd);//获取连接对象
                return conn;
            }catch(ClassNotFoundException e){
                e.printStackTrace();
                return null;
            }catch(SQLException e){
                e.printStackTrace();
                return null;
            }
        }
        public static void closeAll(Connection conn,PreparedStatement ps,ResultSet rs){
            try{
                if(rs!=null){
                    rs.close();
                }
            }catch(SQLException e){
                e.printStackTrace();
            }
            try{
                if(ps!=null){
                    ps.close();
                }
            }catch(SQLException e){
                e.printStackTrace();
            }
            try{
                if(conn!=null){
                    conn.close();
                }
            }catch(SQLException e){
                e.printStackTrace();
            }
        }
        public static void main(String[] args) throws SQLException
        {
            Connection cc= getConnection();
            if(!cc.isClosed())
                System.out.println("Succeeded connecting to the Database!");
            Statement statement = cc.createStatement();
            String sql = "select * from tb_user";
            ResultSet rs = statement.executeQuery(sql);
            while(rs.next()) {
                System.out.println(rs.getString("id")+"");
            }
        }
    }
    
    
  • 相关阅读:
    /dev/tty /dev/ttyS0 /dev/tty0区别
    标准Makefile模板
    Linux Gcc常用命令
    使用mutt+msmtp在Linux命令行界面下发邮件
    DirSync: List of attributes that are synced by the Azure Active Directory Sync Tool
    批量硬关联本地AD帐号与Office云端帐号
    Linux下LDAPSearch的例子
    Powershell连接Office 365各组件的方法
    Shell下的正则表达式 (鸟哥私房菜)
    MySQL数据库管理常用命令
  • 原文地址:https://www.cnblogs.com/xianyao/p/12595432.html
Copyright © 2011-2022 走看看