java.lang.AbstractMethodError: oracle.jdbc.driver.OracleConnection.isValid(I 解决办法

java.lang.AbstractMethodError: oracle.jdbc.driver.OracleConnection.isValid(I 解决办法

在使用Tomcat的连接池连接数据库时,总是报java.lang.AbstractMethodError: oracle.jdbc.driver.OracleConnection.isValid(I 这个错误,尝试了很多方法都没有解决,非常非常的愁苦!!而且我拿同学的工程来跑,还是出现这个问题!!
我JDK版本是1.8,项目中使用的ojdbc6.jar的驱动,按理说我的JDK和jdbc的版本是完全匹配的,bug在哪不得其解。
java.lang.AbstractMethodError: oracle.jdbc.driver.OracleConnection.isValid(I 解决办法

由于我拿同学的工程来跑还是出现抽象方法错误的bug,我就怀疑是我的Tomcat环境出现了问题,查阅了很多资料终于找到了解决的办法。

原因就是我Tomcat的安装目录下的lib文件夹下存在ojdbc7.jar和一个class12.jar的驱动包,而我项目中使用的是ojdbc6.jarde 驱动,所以出现了以上错误。

(这是我之前做项目时遗留下来的问题)
java.lang.AbstractMethodError: oracle.jdbc.driver.OracleConnection.isValid(I 解决办法
java.lang.AbstractMethodError: oracle.jdbc.driver.OracleConnection.isValid(I 解决办法
果断将这ojdbc5.jar和class12.jar包移出lib文件夹,将ojdbc6添加进来,再运行的项目,发现bug不见了!哈哈哈哈哈哈哈哈哈哈

还有一个原因可能就是你工程下的Referenced Librarie中存在多个引用资源库,所以,程序不知道要使用哪一个驱动,所以出现了bug。
java.lang.AbstractMethodError: oracle.jdbc.driver.OracleConnection.isValid(I 解决办法

java.lang.AbstractMethodError: oracle.jdbc.driver.OracleConnection.isValid(I 解决办法