1、测试代码
package com.zx.jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
/**
* 测试连接
* @author 温暖wk
*
*/
public class Demo01 {
public static void main(String[] args) {
//加载驱动类
try {
Class.forName("com.mysql.jdbc.Driver");
//Class.forName("com.mysql.cj.jdbc.Driver");
Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","521123456");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
2、报错
Loading class com.mysql.jdbc.Driver’. This is deprecated. The new
driver class iscom.mysql.cj.jdb”
这是因为用了最新的mysql 连接驱动
官方提示支持将com.mysql.jdbc.Driver 改为 com.mysql.cj.jdbc.Driver
3、运行之后,仍然报错,不能运行,提示
Caused by:
com.mysql.cj.exceptions.InvalidConnectionAttributeException: The
server time zone value ‘Öйú±ê׼ʱ¼ä’ is unrecognized or represents
more than one time zone. You must configure either the server or JDBC
driver (via the serverTimezone configuration property) to use a more
specifc time zone value if you want to utilize time zone support. at
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown
Source) at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown
解决:修改如下:
Connection conn=DriverManager.getConnection(“jdbc:mysql://10.66.113.124:3306/work?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT”,“root”,“521123456”);
到此,连接成功。注:提示报错一详见数据库连接问题一