tomcat dbcp pool在tomcat 7 和tomcat8下的jar包有变化,相应包名也发生变化,对应类名有相应变化!
tomcat的lib文件夹下会有jar包tomcat-dbcp.jar,用做tomcat的数据库连接池,
我们在 jndi中配置数据源时,需要写入对应的工厂类,在tomcat7和tomcat8下相应的类名会有变化:
tomcat7 下为
factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
tomcat8 下为
factory="org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory"
在使用时需要特别注意区别,否则会导致数据源连接失败,应用启动异常!
如何避免这个问题,可以使用tomcat jdbc pool,在tomcat7和tomcat8中的配置内容相同,均为:
factory="org.apache.tomcat.jdbc.pool.DataSourceFactory",
这样就会不用再升级tomcat 8 后修改相应的jndi数据源配置配置了。