Dae*_*ung 2 java oracle jdbc thin beanshell
我从某人那里继承了一个VM(Linux OS)。它在tomcat和oracle 11.2.0数据库内部部署/运行了一个Java应用程序“ bob”。我按照以下示例在beanshell(Java的轻量级)中编写了一个简单的数据库连接,它执行得很好,但是我想到了一个问题。
Connection con = DriverManager.getConnection("jdbc:oracle:thin:hostname:1521:sidname","username","password");
Run Code Online (Sandbox Code Playgroud)
我注意到ojdbc14.jar从Oracle安装目录/somepath/oracle/product/11.2.0/xe/jdbc/lib/{ojdbc5.jar中找到了/somepath/tomcat/webapps/bob/WEB-INF/lib/ojdbc14.jar ,ojdbc6_g.jar,ojdbc6.jar}找到三个ojdbc jar文件。
在这种情况下,哪个jar文件使用瘦驱动程序以建立数据库连接并成功运行sql查询语句?
您应该摆脱ojdbc14.jar和jdbc5.jar。第一个用于Java 1.4,第二个用于Java 5(除非您实际使用这些过时的,不受支持的Java版本)。
如果您使用的是Java7,则应使用ojdbc7.jar。如果仍在使用(不受支持的)Java 6,则应使用ojdbc6.jar。
请注意,文件名中的数字仅表示Java版本,而不表示驱动程序的版本。为此,您需要查看MANIFEST.MF或使用DatabaseMetaData.getDriverVersion()
关于Tomcat中的类加载:
Tomcat的无论从加载类$CATALINA_HOME/lib,$CATALINA_HOME/lib/ext或在部署webbaps的一个WEB-INF/lib目录。
因此,在您的情况下,将使用过时的,过时的/somepath/tomcat/webapps/bob/WEB-INF/lib/ojdbc14.jar。
您应该替换为最新版本。
| 归档时间: |
|
| 查看次数: |
1175 次 |
| 最近记录: |