在进行单元测试发现Caused by: javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: java.sec
解决方法:
"jdbc:mysql://127.0.0.1:3306/java_16blogdemo?characterEncoding=utf-8&useSSL=true";
将上面的useSSL改为false即可 。
"C:Program Files (x86)Javajdk1.8.0_73binjava.exe" "-javaagent:F:IntelliJ IDEA 2019.3.3libidea_rt.jar=60537:F:IntelliJ IDEA 2019.3.3bin" -Dfile.encoding=UTF-8 -classpath "C:Program Files (x86)Javajdk1.8.0_73jrelibcharsets.jar;C:Program Files (x86)Javajdk1.8.0_73jrelibdeploy.jar;C:Program Files (x86)Javajdk1.8.0_73jrelibextaccess-bridge-32.jar;C:Program Files (x86)Javajdk1.8.0_73jrelibextcldrdata.jar;C:Program Files (x86)Javajdk1.8.0_73jrelibextdnsns.jar;C:Program Files (x86)Javajdk1.8.0_73jrelibextjaccess.jar;C:Program Files (x86)Javajdk1.8.0_73jrelibextjfxrt.jar;C:Program Files (x86)Javajdk1.8.0_73jrelibextlocaledata.jar;C:Program Files (x86)Javajdk1.8.0_73jrelibextnashorn.jar;C:Program Files (x86)Javajdk1.8.0_73jrelibextsunec.jar;C:Program Files (x86)Javajdk1.8.0_73jrelibextsunjce_provider.jar;C:Program Files (x86)Javajdk1.8.0_73jrelibextsunmscapi.jar;C:Program Files (x86)Javajdk1.8.0_73jrelibextsunpkcs11.jar;C:Program Files (x86)Javajdk1.8.0_73jrelibextzipfs.jar;C:Program Files (x86)Javajdk1.8.0_73jrelibjavaws.jar;C:Program Files (x86)Javajdk1.8.0_73jrelibjce.jar;C:Program Files (x86)Javajdk1.8.0_73jrelibjfr.jar;C:Program Files (x86)Javajdk1.8.0_73jrelibjfxswt.jar;C:Program Files (x86)Javajdk1.8.0_73jrelibjsse.jar;C:Program Files (x86)Javajdk1.8.0_73jrelibmanagement-agent.jar;C:Program Files (x86)Javajdk1.8.0_73jrelibplugin.jar;C:Program Files (x86)Javajdk1.8.0_73jrelibresources.jar;C:Program Files (x86)Javajdk1.8.0_73jrelibrt.jar;G:bishetest_maventargetclasses;F:apache-maven-3.6.3-binapache-maven-3.6.3Repositorymysqlmysql-connector-java5.1.47mysql-connector-java-5.1.47.jar" model.UserDao com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure The last packet successfully received from the server was 1,373 milliseconds ago. The last packet sent successfully to the server was 1,366 milliseconds ago. at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:422) at com.mysql.jdbc.Util.handleNewInstance(Util.java:425) at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:990) at com.mysql.jdbc.ExportControlled.transformSocketToSSLSocket(ExportControlled.java:201) at com.mysql.jdbc.MysqlIO.negotiateSSLConnection(MysqlIO.java:4914) at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1663) at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1224) at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2199) at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2230) at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2025) at com.mysql.jdbc.ConnectionImpl.(ConnectionImpl.java:778) at com.mysql.jdbc.JDBC4Connection. (JDBC4Connection.java:47) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:422) at com.mysql.jdbc.Util.handleNewInstance(Util.java:425) at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:386) at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:330) at com.mysql.jdbc.jdbc2.optional.MysqlDataSource.getConnection(MysqlDataSource.java:428) at com.mysql.jdbc.jdbc2.optional.MysqlDataSource.getConnection(MysqlDataSource.java:136) at com.mysql.jdbc.jdbc2.optional.MysqlDataSource.getConnection(MysqlDataSource.java:107) at model.DBUtil.getConnection(DBUtil.java:54) at model.UserDao.add(UserDao.java:20) at model.UserDao.main(UserDao.java:85) Caused by: javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: java.security.cert.CertPathValidatorException: Path does not chain with any of the trust anchors at sun.security.ssl.Alerts.getSSLException(Alerts.java:192) at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1949) at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:302) at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:296) at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1509) at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:216) at sun.security.ssl.Handshaker.processLoop(Handshaker.java:979) at sun.security.ssl.Handshaker.process_record(Handshaker.java:914) at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1062) at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375) at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1403) at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387) at com.mysql.jdbc.ExportControlled.transformSocketToSSLSocket(ExportControlled.java:186) ... 21 more Caused by: java.security.cert.CertificateException: java.security.cert.CertPathValidatorException: Path does not chain with any of the trust anchors at com.mysql.jdbc.ExportControlled$X509TrustManagerWrapper.checkServerTrusted(ExportControlled.java:302) at sun.security.ssl.AbstractTrustManagerWrapper.checkServerTrusted(SSLContextImpl.java:922) at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1491) ... 29 more Caused by: java.security.cert.CertPathValidatorException: Path does not chain with any of the trust anchors at sun.security.provider.certpath.PKIXCertPathValidator.validate(PKIXCertPathValidator.java:153) at sun.security.provider.certpath.PKIXCertPathValidator.engineValidate(PKIXCertPathValidator.java:79) at java.security.cert.CertPathValidator.validate(CertPathValidator.java:292) at com.mysql.jdbc.ExportControlled$X509TrustManagerWrapper.checkServerTrusted(ExportControlled.java:295) ... 31 more Exception in thread "main" java.lang.NullPointerException at model.UserDao.add(UserDao.java:25) at model.UserDao.main(UserDao.java:85)



