本人出现这个错误的原因是,在原来的个人电脑中使用win7 64位系统。然后转项目到win10 64位系统。原来win7使用的jdk6(32位)和7(64位),与tomcat7.一直使用都没有问题。在win10下,使用jdk1.6(32位,64位都试过)一直报上面这个错。使用1.7(64位)没有报错。但是项目正式部署需要1.6。所以必须解决使用1.6来编译。
解决方法如下:
1.下载两个jar包
1.bcprov-ext-jdk15on-1.54.jar
2.bcprov-jdk15on-1.54.jar
2.将下载的两个JAR文件复制到:JDK安装目录\jre\lib\ext下,例如我的就是D:\Program Files (x86)\java\JDK1.6\jre\lib\ext
3.打开java.security文件:在JDK安装目录\jre\lib\security下的java.security文件。
找到security.provider.1=sun.security.provider.Sun换成
security.provider.1=org.bouncycastle.jce.provider.BouncyCastleProvider
重新执行连接数据库程序就可以。
使用上面的方法可以解决这个问题,但是有我又发现了一个另外的问题。
上面可以使用1.6(64位)之后。当使用的tomcat是7(64位)的时候,会报java.security.NoSuchAlgorithmException: SHA1PRNG SecureRandom not available这个错。
但是虽然报错,不过还是可以正常使用。
当使用1.6(64位)和tomcat6(64位)之后,就没有这个报错,正常使用。