使用JDBC连接MYSQL数据库的问题

时间:2021-02-03 13:06:27
————————————这是源代码————————
package util;
import java.sql.Connection;
import java.sql.DriverManager;

public class DBHelp {

private static final String driver = "com.mysql.jdbc.Driver";
private static final String url = "jdbc:mysql://localhost:3306";
private static final String user = "root";
private static final String password = "123456";
static Connection conn = null;
static {
try{
Class.forName(driver);
}catch(Exception e){
e.printStackTrace();
}
}

public static Connection getConnection() throws Exception{
if(conn == null){
conn = DriverManager.getConnection(url, user, password);
return conn;
}
return conn;
}
public static void main(String[] args) {
try {
Connection conn = DBHelp.getConnection();
if(conn != null){
System.out.println("连接成功");
}else{
System.out.println("连接失败");
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
—————————— 这是报的异常信息————————————————————
Sun Jan 17 02:36:22 GMT+08:00 2016 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 SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate 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 verification.
连接成功

12 个解决方案

#1


请各位高手支招,在网上搜了半天了,都没有找到答案

#2


这个不是异常,只是一个警告,翻译一下就知道大概意思是,不建议在没有服务器身份验证的情况下建立SSL连接。

#3


private static final String url = "jdbc:mysql://localhost:3306";  //这里需要指定你连接的数据库名称吧

#4


引用 2 楼 Earl_yuan的回复:
这个不是异常,只是一个警告,翻译一下就知道大概意思是,不建议在没有服务器身份验证的情况下建立SSL连接。

那要怎么弄才不会有这个警告呢?

#5


跟楼主遇到一样的问题

#6


引用 4 楼 zsw82235421 的回复:
Quote: 引用 2 楼 Earl_yuan的回复:
这个不是异常,只是一个警告,翻译一下就知道大概意思是,不建议在没有服务器身份验证的情况下建立SSL连接。

那要怎么弄才不会有这个警告呢?


设置控制台显示信息的级别

#7


引用 6 楼 效林少爷的回复:
Quote: 引用 4 楼 zsw82235421 的回复:

Quote: 引用 2 楼 Earl_yuan的回复:
这个不是异常,只是一个警告,翻译一下就知道大概意思是,不建议在没有服务器身份验证的情况下建立SSL连接。

那要怎么弄才不会有这个警告呢?


设置控制台显示信息的级别

对不起我可能没有表达清楚我的意思,我的意思是说:要在程序里加什么代码,才不会有这个警告,我在网上查了下好像是要在URL里加SSL=true但是我加了还是没有起到作用 使用JDBC连接MYSQL数据库的问题

#8


引用 7 楼 zsw82235421 的回复:
Quote: 引用 6 楼 效林少爷的回复:
Quote: 引用 4 楼 zsw82235421 的回复:

Quote: 引用 2 楼 Earl_yuan的回复:
这个不是异常,只是一个警告,翻译一下就知道大概意思是,不建议在没有服务器身份验证的情况下建立SSL连接。

那要怎么弄才不会有这个警告呢?


设置控制台显示信息的级别

对不起我可能没有表达清楚我的意思,我的意思是说:要在程序里加什么代码,才不会有这个警告,我在网上查了下好像是要在URL里加SSL=true但是我加了还是没有起到作用 使用JDBC连接MYSQL数据库的问题

警告没什么问题。强迫症么?

#9


我也是刚刚遇到问题,然后搜了一下,有人说是在url这一下的书写最后加
?useUnicode=true&characterEncoding=utf-8&useSSL=false,然后我试了一下,没有问题。
例如
String url = "jdbc:mysql://127.0.0.1:3306/spdb1?useUnicode=true&characterEncoding=utf-8&useSSL=false";

#10


你的url里面数据库名称都没有,肯定错。跟SSL没有关系,jdbc:mysql://localhost:3306这个只是前缀,后面加上你的数据库名称就OK了,得确保你本地有这个数据库名称。

#11


String url="jdbc:mysql://localhost:3306/test1?useUnicode=true&characterEncoding=utf-8&useSSL=false";

#12


引用 9 楼 baidu_15052805 的回复:
我也是刚刚遇到问题,然后搜了一下,有人说是在url这一下的书写最后加
?useUnicode=true&characterEncoding=utf-8&useSSL=false,然后我试了一下,没有问题。
例如
String url = "jdbc:mysql://127.0.0.1:3306/spdb1?useUnicode=true&characterEncoding=utf-8&useSSL=false";


按你的方法试了,发现有个简便方法:直接在原url后面追加?useSSL=false即可:(主机名localhost,数据库名student)
url="jdbc:mysql://localhost/student?useSSL=false"

#1


请各位高手支招,在网上搜了半天了,都没有找到答案

#2


这个不是异常,只是一个警告,翻译一下就知道大概意思是,不建议在没有服务器身份验证的情况下建立SSL连接。

#3


private static final String url = "jdbc:mysql://localhost:3306";  //这里需要指定你连接的数据库名称吧

#4


引用 2 楼 Earl_yuan的回复:
这个不是异常,只是一个警告,翻译一下就知道大概意思是,不建议在没有服务器身份验证的情况下建立SSL连接。

那要怎么弄才不会有这个警告呢?

#5


跟楼主遇到一样的问题

#6


引用 4 楼 zsw82235421 的回复:
Quote: 引用 2 楼 Earl_yuan的回复:
这个不是异常,只是一个警告,翻译一下就知道大概意思是,不建议在没有服务器身份验证的情况下建立SSL连接。

那要怎么弄才不会有这个警告呢?


设置控制台显示信息的级别

#7


引用 6 楼 效林少爷的回复:
Quote: 引用 4 楼 zsw82235421 的回复:

Quote: 引用 2 楼 Earl_yuan的回复:
这个不是异常,只是一个警告,翻译一下就知道大概意思是,不建议在没有服务器身份验证的情况下建立SSL连接。

那要怎么弄才不会有这个警告呢?


设置控制台显示信息的级别

对不起我可能没有表达清楚我的意思,我的意思是说:要在程序里加什么代码,才不会有这个警告,我在网上查了下好像是要在URL里加SSL=true但是我加了还是没有起到作用 使用JDBC连接MYSQL数据库的问题

#8


引用 7 楼 zsw82235421 的回复:
Quote: 引用 6 楼 效林少爷的回复:
Quote: 引用 4 楼 zsw82235421 的回复:

Quote: 引用 2 楼 Earl_yuan的回复:
这个不是异常,只是一个警告,翻译一下就知道大概意思是,不建议在没有服务器身份验证的情况下建立SSL连接。

那要怎么弄才不会有这个警告呢?


设置控制台显示信息的级别

对不起我可能没有表达清楚我的意思,我的意思是说:要在程序里加什么代码,才不会有这个警告,我在网上查了下好像是要在URL里加SSL=true但是我加了还是没有起到作用 使用JDBC连接MYSQL数据库的问题

警告没什么问题。强迫症么?

#9


我也是刚刚遇到问题,然后搜了一下,有人说是在url这一下的书写最后加
?useUnicode=true&characterEncoding=utf-8&useSSL=false,然后我试了一下,没有问题。
例如
String url = "jdbc:mysql://127.0.0.1:3306/spdb1?useUnicode=true&characterEncoding=utf-8&useSSL=false";

#10


你的url里面数据库名称都没有,肯定错。跟SSL没有关系,jdbc:mysql://localhost:3306这个只是前缀,后面加上你的数据库名称就OK了,得确保你本地有这个数据库名称。

#11


String url="jdbc:mysql://localhost:3306/test1?useUnicode=true&characterEncoding=utf-8&useSSL=false";

#12


引用 9 楼 baidu_15052805 的回复:
我也是刚刚遇到问题,然后搜了一下,有人说是在url这一下的书写最后加
?useUnicode=true&characterEncoding=utf-8&useSSL=false,然后我试了一下,没有问题。
例如
String url = "jdbc:mysql://127.0.0.1:3306/spdb1?useUnicode=true&characterEncoding=utf-8&useSSL=false";


按你的方法试了,发现有个简便方法:直接在原url后面追加?useSSL=false即可:(主机名localhost,数据库名student)
url="jdbc:mysql://localhost/student?useSSL=false"