JDBC获取连接时的时间问题

  JDBC获取连接时的时间问题

附源代码:

        Connection conn=null;
        PreparedStatement psPreparedStatement=null;
        ResultSet rs=null;
        
        try {
            Class.forName("com.mysql.cj.jdbc.Driver");//注意要引入外来mysql包
            conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/hanxiao","root","");
            String sql="select job,sal from emp where sal=?";
            psPreparedStatement=conn.prepareStatement(sql);
            psPreparedStatement.setString(1, "800.00");
            rs=psPreparedStatement.executeQuery();

 

出现的问题:

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.
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:89)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:63)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:73)
    at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:76)
    at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:836)

 

出现这个问题是时区的问题,要么调整自己电脑的时间,或者在获取连接的url后面加上serverTimezone=GMT,这样就可以运行了

conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/hanxiao?serverTimerzone=GMT","root","");
posted @ 2020-10-21 14:51  焕不涣  阅读(750)  评论(0编辑  收藏  举报