出现Wed Apr 24 21:05:28 CST 2019 WARN

在学习Mybatis时遇到一个警告,内容是关于在没有服务器身份验证的情况下建立SSL连接不被推荐。根据MySQL的版本要求,SSL连接应当默认启用。解决方法是在SqlMapConfig.xml或db.properties文件中添加`useSSL=false`来禁用SSL,或者设置`useSSL=true`并配置信任存储以验证服务器证书。问题解决后,通信链路失败的错误不再出现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Wed Apr 24 21:05:28 CST 2019 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.

 

这是在学习mybatis的加载属性文件测试时出现的问题

我的SqlMapConfig.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>

	<!-- 加载属性文件 -->
	<properties resource="db.properties"></properties>
	<!-- 和spring聚合后environments配置将废除 -->
	<environments default="development">
		<environment id="development">
			<!-- 使用jdbc事物管理 -->
			<transactionManager type="JDBC" />
			<!-- 数据库连接池 -->
			<dataSource type="POOLED">
				<property name="driver" value="${jdbc.driver}" />
				<!-- jdbc:mysql://localhost:3306/mybatis?useUnicode=true&amp;characterEncoding=utf-8&amp;useSSL=false&amp;serverTimezone=UTC -->
				<property name="url" value="${jdbc.url}" />
				<property name="username" value="${jdbc.username}" />
				<property name="password" value="${jdbc.password}" />

			</dataSource>
		</environment>
	</environments>

	<!-- 加载映射文件 -->
	<mappers>
		<mapper resource="sqlmap/User.xml" />
		<mapper resource="mapper/UserMapper.xml" />
	</mappers>

</configuration>

我的有问题的db.properties文件:

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/mybatis
jdbc.username=root
jdbc.password=mysql

上面的password是你自己的数据库密码

 

报错说明:不建议在没有服务器身份验证的情况下建立SSL连接。根据MySQL 5.5.45+, 5.6.26+和5.7.6+的要求,如果没有设置显式选项,则必须默认建立SSL连接。您需要通过设置useSSL=false显式地禁用SSL,或者设置useSSL=true并为服务器证书验证提供信任存储。创建连接错误 通信链路失败

解决办法:在MySQL的链接中添加useSSL=false

 

改db.properties文件为

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/mybatis?useSSL=false
jdbc.username=root
jdbc.password=mysql

这样就可以解决问题了

 

 

参考博客:https://blog.youkuaiyun.com/qinxu0611/article/details/86146163

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值