我有一个卡拉夫计划,包括以下部分:
卡拉夫4.0.7;
休眠4.3.7;
mysql jdbc连接器5.1.27;
c3p0.9.5。
我刚刚建立了一个新的开发环境,我使用的是mysql 8.0.11(最近才发布)。我已经在本地将mysql connector升级到5.1.46,这样它就可以与mysql 8兼容了,而且基本上可以正常工作。但是,我在karaf控制台中收到一些关于ssl的警告:
4月25日星期三09:28:29 cest 2018警告:不建议在没有服务器身份验证的情况下建立ssl连接。根据mysql 5.5.45+、5.6.26+和5.7.6+的要求,如果没有设置explicit选项,默认情况下必须建立ssl连接。为了符合不使用ssl的现有应用程序,verifyservercertificate属性设置为“false”。您需要通过设置usessl=false显式禁用ssl,或者设置usessl=true并为服务器证书验证提供信任库。
我想在本地禁用ssl,但建议添加 &useSSL=false
连接字符串的结尾不起作用。这是我的连接字符串:
hibernate.connection.url=jdbc:mysql://localhost:3306/dbname?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&requireSSL=false
我做错什么了?
1条答案
按热度按时间iyfamqjs1#
在遇到mysql和hibernate ssl连接之后,我发现不应该像使用tomcat webapp.xml文件那样将usessl和requiressl属性添加到jdbc url中(正如我最初认为的那样),而是作为单独的属性添加
hibernate.connection.useSSL
以及hibernate.connection.requireSSL
属性。用法:
将这两行代码添加到karaf中的hibernate.properties文件中,消除了警告。