在连接数据库oracle数据库时出现了如下错误:
org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (ORA-28040: No matching authentication protocol)] with root cause
该错误出现的原因是:1.你安装的oracle版本不支持你设置的运行链接。
2.可能是引入了的ojdbc14.jar出错。
解决方案:1.找到你Oracle安装包下的sqlnet.ora文件。(我的文件路径在:E:\app\yuanshu\product\12.1.0\dbhome_1\NETWORK\ADMIN\sqlnet.ora)可做参考。
2.为oracle数据库添加支持的版本链接。添加语句为:
SQLNET_ALLOWED_LOGON_VERSIONS=(12,11,10,9,8,7)
注: 该语句表示支持oracle7-12版本的链接。
3.将ojdbc14.jar替换为ojdbc6.jar.
(ojdbc14.jar支持JDK1.4,是老式版本,当中存在一些bug。ojdbc6.jar支持JDK6)
特别建议:Oracle9.0以后的版本都建议使用:“oracle.jdbc.OracleDriver”加载驱动类,而不再使用“oracle.jdbc.driver.OracleDriver”.