数据库连接警告

这几天写Web项目的时候,控制台总是输出这样一句话

Sat Oct 31 10:42:24 CST 2020 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.

去Google翻译了一下,

Sat Oct 31 10:42:24 CST 2020警告:不建议在没有服务器身份验证的情况下建立SSL连接。 根据MySQL 5.5.45 +,5.6.26 +和5.7.6+的要求,如果未设置显式选项,则默认情况下必须建立SSL连接。 为了与不使用SSL的现有应用程序兼容,将verifyServerCertificate属性设置为’false’。 您需要通过设置useSSL = false显式禁用SSL,或者设置useSSL = true并提供信任库以进行服务器证书验证。

看了看,应该是要求设置userSSL,所以一般在数据库连接url末尾加上“useSSL=false”就可以了。

不过,如果使用JNDI方式连接,在context.xml里面修改就不能直接添加了

会出现报错“The reference to entity “useSSL” must end with the ‘;’ delimiter.”

仔细研究了一下,在这个xml文件中修改的话, &符号是需要需要转义的,所以改成&就可以了,也就是说改成

&useSSL=false"

就正确了,这样就不报错了。

 

 

附:HTML转义字符参考网站 https://tool.oschina.net/commons?type=2