我在ContextListener的contextDestroyed方法(Tomcat)中取消注册JDBC驱动程序,我注意到两个JDBC驱动程序而不是一个。
我确实加载了oracle.jdbc.driver.OracleDriver
的实例,但我不知道为什么和谁加载sun.jdbc.odbc.JdbcOdbcDriver
。
任何提示?
答案 0 :(得分:2)
由于JDBC 4(Java 6)JDBC驱动程序在具有正确服务条目的类路径上自动加载。
JdbcOdbcDriver在Java 6和7中自动加载,因为它位于类路径上(它是Java本身的一部分);它已在Java 8中删除。
请注意,您不需要删除此驱动程序,因为它是为整个JVM加载的,而不仅仅是为您的上下文(Web应用程序)加载。