2021-03-02 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 mysql-connector-java 8.0.11

      配置文件:jdbc.driver=com.mysql.cj.jdbc.Driverjdbc.url=localhost:3306/数据库名?useSSL=false&serverTimezone=UTCjdbc.username=rootjdbc.password=root


4.测试连接是否成功:

packageutil;

importjava.sql.Connection;importjava.sql.DriverManager;

importjava.sql.PreparedStatement;

importjava.sql.ResultSet;importjava.sql.SQLException;

importjava.sql.Statement;publicclassTest{@SuppressWarnings("unused")privatestaticTest JDBCUtlTool;publicstaticConnectiongetConnection(){       

       String driver ="com.mysql.cj.jdbc.Driver";// 获取mysql数据库的驱动类

       String url ="jdbc:mysql://localhost:3306/zhcs?useSSL=false&serverTimezone=UTC&characterEncoding=UTF-8";// 连接数据库(zhcs是数据库名)

      //String url="jdbc:mysql://localhost:3306/zhcs?useSSL=true&serverTimezone=GMT&characterEncoding=UTF-8";

      String name ="root";// 连接mysql的用户名

      String pwd ="123456";// 连接mysql的密码

      try{           

             Class.forName(driver);           

             Connection conn = DriverManager.getConnection(url, name, pwd);// 获取连接对象returnconn;       

            }catch(ClassNotFoundException e) {           

             e.printStackTrace();returnnull;       

            }catch(SQLException e) {           

             e.printStackTrace();returnnull;      

           }

      }


publicstaticvoidcloseAll(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();       

           }   

             }publicstaticvoidmain(String[] args)throwsSQLException{       

             Connection cc = getConnection();if(!cc.isClosed())           

             System.out.println("Succeeded connecting to the Database!");       

             Statement statement = cc.createStatement();       

             String sql ="select * from  t_r_webfun";       

             ResultSet rs = statement.executeQuery(sql);

             while(rs.next()) {           

             System.out.println(rs.getString("F_ID") +"");       

           }   

       }

}

萌新多多关照——by 小谈

你可能感兴趣的:(2021-03-02 MySQL8.0数据库连接问题)