实现简单的数据库连接JDBC连接MySQL,navicat测试连接以及新版本可能出现的问题解决

实现mysql(workbench客户端)建立数据在navicat测试连接,JDBC实现连接。出现问题:navicat能连接上mysql,但jdbc一直不行。无敌爆炸问题弄了我一下午,问题解决很简单在url后面加上serverTimezone=UTC,原因可能是驱动更新了。驱动改为com.mysql.cj.jdbc.Driver

下面模拟实现
1.先是在mysql中建立数据库端口设置为3306,用户名为root,密码为zheng。
数据库为new_schema,数据表为new_table,列名为class和age设置一个数为2和2,为int类型。
2.下载navicat,输入端口和用户,查看。如果navicat能连上那证明端口和用户没问题,只能是代码问题。
3.下载JDBC驱动https://dev.mysql.com/downloads/connector/j/
4.将驱动添加进环境变量中
5.只能上代码了

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

public class first {
    public static void main(String[] args)
    {
        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
            String url = "jdbc:mysql://localhost:3306/new_schema?serverTimezone=UTC ";
            String user = "root";
            String pwd = "zheng";
            Connection conn = DriverManager.getConnection(url, user, pwd);
            Statement  stmt = conn.createStatement();
            ResultSet set = stmt.executeQuery("select * from new_table");
            while(set.next())
            {
                System.out.print(set.getInt(1)+":"+set.getInt(1));
            }
        }catch(ClassNotFoundException e)
        {
            System.out.print("3");
        }catch(Exception e)
        {
            e.printStackTrace();
        }
        
    }

}

记得加serverTimezone=UTC

记得加serverTimezone=UTC

记得加serverTimezone=UTC

重要的事情说三遍
还有驱动包的名字更行成了“com.mysql.cj.jdbc.Driver“

你可能感兴趣的:(实现简单的数据库连接JDBC连接MySQL,navicat测试连接以及新版本可能出现的问题解决)