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



我的webapp的WEB-INF/lib中有许多JDBC驱动程序jar文件,例如oracle和SQL Server。在Tomcat7中,如果Web应用程序只使用oracle,则SQL Server驱动程序不会注册,但在Tomcat6中它会注册(我可以从ServletContextListener中的contextDestroyed()中看到这一点,它会注销由该类加载器加载的驱动程序)。

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

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

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

context.xml中声明一个DataSource,然后用它释放资源。

最新更新