myeclipse下用JDBC链接mysql8出现的错误和解决方案

mysql8.0.13的改动
1、mysql8.0.13好像改变了配置,之前是在

com.mysql.jdbc.Driver

下面的,但是到了8改成了

com.mysql.cj.jdbc.Driver

2、链接的Url
之前是直接配置到数据库就可以了,比如我要连rsgl数据库

String url=jdbc:mysql://localhost:3306/rsgl

但是现在不行了,会出现这样的错误
在这里插入图片描述
网上查了一下好像说是因为这是由于数据库和系统时区差异所造成的,这要把这句改成

String url = "jdbc:mysql://localhost:3306/rsgl?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC";

这样子就可以了

在这里插入图片描述3、我没遇到的
看了别人的文章好像还可能出现

WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements <br>SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate<br> property is set to 'false'.You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate<br> verification.

如果出现这样要加

useSSL=false

这样子就可以了

附完整代码

<%@ page contentType="text/html; charset=GB2312" language="java"%>
<%@ page import="java.sql.*"%>
<%@ page import="com.mysql.jdbc.Driver" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
      
    <title>SQL Server</title>
    
  </head>
  
  <body>
    <%
    	Connection conn = null;
    	try
    	{
    		Class.forName("com.mysql.cj.jdbc.Driver");
    		String url = "jdbc:mysql://localhost:3306/rsgl?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC";
    		String user = "root";
    		String password = "123";
    		conn = DriverManager.getConnection(url,user,password);
    		out.println("数据库链接成功<br>");
    	
    	}
    	catch(ClassNotFoundException e)
    	{
    		out.println("!"+e.getMessage());
    	}
    	finally
    	{
    		try
    		{
    			if(conn!=null)
    			{
    				conn.close();
    				out.println("数据库关闭");
    			}
    		
    		}
    		catch(Exception e)
    		{
    			out.println(e.getMessage());
    		}
    	
    	}
    	
    	
    
     %>
  </body>
</html>

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值