您的位置:首页 > 产品设计 > UI/UE

jdbc连接数据库 The server time zone value '�й���׼ʱ��' is unrecognized or represents more... 错误

2017-07-19 21:24 986 查看

jdbc连接数据库 The server time zone value ‘�й���׼ʱ��’ is unrecognized or represents more… 错误

问题描述

连接数据库代码示例

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

public class DBUtil {

static String host = “localhost”;

static int port = 3306;

static String database = “demo”;

static String encoding = “UTF-8”;

static String loginName = “root”;

static String password = “root”;

static {

try {

Class.forName(“com.mysql.cj.jdbc.Driver”);

} catch (ClassNotFoundException e) {

e.printStackTrace();

}

}

public static Connection getConnction() throws SQLException {

String url = String.format(“jdbc:mysql://%s:%d/%s?characterEncoding=%s”, host, port, database, encoding);

return DriverManager.getConnection(url, loginName, password);

}

public static void main(String[] args) throws SQLException {

System.out.println(getConnction());

}

}

运行main方法却出现异常

Exception in thread “main” java.sql.SQLException: 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.

解决方法

根据异常提示可知需要添加对应的时区,修改url即可

String url = String.format(“jdbc:mysql://%s:%d/%s?characterEncoding=%s&serverTimezone=UTC”, host, port, database, encoding);

完整代码

package cn.niriqiang.tmail.util;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

public class DBUtil {

static String host = “localhost”;

static int port = 3306;

static String database = “demo”;

static String encoding = “UTF-8”;

static String loginName = “root”;

static String password = “root”;

static {

try {

Class.forName(“com.mysql.cj.jdbc.Driver”);

} catch (ClassNotFoundException e) {

e.printStackTrace();

}

}

public static Connection getConnction() throws SQLException {

String url = String.format(“jdbc:mysql://%s:%d/%s?characterEncoding=%s&serverTimezone=UTC”, host, port, database, encoding);

return DriverManager.getConnection(url, loginName, password);

}

public static void main(String[] args) throws SQLException {

System.out.println(getConnction());

}

}

运行main方法成功

com.mysql.cj.jdbc.ConnectionImpl@1e0f4f
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐