如何防止Tomcat6在WEB-INF / lib中预加载JDBC驱动程序?

时间:2013-12-05 11:39:50

标签: java tomcat jdbc

我的webapp的WEB-INF / lib中有很多JDBC Driver jar文件 - 例如oracle和SQL-Server。在Tomcat7中,如果webapp仅使用oracle,则SQL-Server驱动程序不会被注册,但在Tomcat6中它会这样(我可以在ServletContextListener中的contextDestroyed()中看到这个,它取消注册此类加载器加载的驱动程序)

Tomcat6是否以某种方式从WEB-INF / lib中的jar中预加载类?如果是这样,可以禁用吗?

(我知道这些罐子在共享库中会更好,但这是另一个问题......)

1 个答案:

答案 0 :(得分:1)

永远不要将驱动程序放在webapp类路径中。将它始终放入服务器的类路径中。

然后在DataSource中声明context.xml,然后使用this释放资源。