由于之前使用的 Tomcat版本为6.0.41,版本较低,漏洞太多,安全检测总被扫描出来,所以升级到 Tomcat8.5.29,用的SQLSERVER2008数据库,一连接总报错:
Caused by: java.lang.AbstractMethodError
at org.apache.tomcat.dbcp.dbcp2.DelegatingConnection.isValid(DelegatingConnection.java:924)
at org.apache.tomcat.dbcp.dbcp2.PoolableConnection.validate(PoolableConnection.java:282)
at org.apache.tomcat.dbcp.dbcp2.PoolableConnectionFactory.validateConnection(PoolableConnectionFactory.java:364)
at org.apache.tomcat.dbcp.dbcp2.BasicDataSource.validateConnectionFactory(BasicDataSource.java:2355)
at org.apache.tomcat.dbcp.dbcp2.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:2338)
at org.apache.tomcat.dbcp.dbcp2.BasicDataSource.createDataSource(BasicDataSource.java:2067)
at org.apache.tomcat.dbcp.dbcp2.BasicDataSource.getConnection(BasicDataSource.java:1543)
网上找了半天解决办法都没有找到,最后终于找到如下这篇文章解决了问题,非常感谢博主的分享!
原因就是
driverClassName="net.sourceforge.jtds.jdbc.Driver"
maxIdle="30"
maxWait="5000"
username="sa"
password="sa"
url="jdbc:jtds:sqlserver://localhost:1433/clgl;charset=gbk;SelectMethod=CURSOR"
maxActive="150"
validationQuery="select 1"/>
此外,还需要把tomcat\lib 下的 jtds-1.2.jar 换成 jtds-1.3.jar,否则会报错;
转自: http://mzjwx.blog.163.com/blog/static/7167883320154561547275/