我们已经将我们的Oracle数据库升级到了版本12,我们有一个在WebLogic12.1.2.0.0上运行Java 7的Java应用程序,它使用驱动程序类名:oracle.jdbc.OracleDriver连接数据库。
如果我在WebLogicInstallation文件夹C:\Oracle\Middleware\Oracle_Home中搜索,那么我在任何地方都找不到任何C:\Oracle\Middleware\Oracle_Home驱动程序,但是我可以在LocationC:\Oracle\Middleware\Oracle_Home\oracle_common\modules\oracle.jdbc_11.2.0中找到ojdbc6.jar。
我正在尝试升级到ojdbc7.jar。根据站点为Oracle服务器配置和管理JDBC数据源的融合中间件,我需要在类路径上设置以下驱动程序:
我从这里下载了前几个文件,其余的已经在我的weblogic文件夹中找到了。我把它们复制到一个文件夹D:\Oracle\Middleware\Oracle_Home\oracle_common\modules\oracle.jdbc7中。
我将所有的jars添加到我的类路径中:
D:\Oracle\Middleware\Oracle_Home\oracle_common\common\bin\commEnv.cmd
set WEBLOGIC_CLASSPATH=C:\Oracle\Middleware\Oracle_Home\oracle_common\modules\oracle.jdbc7\ojdbc7.jar;C:\Oracle\Middleware\Oracle_Home\oracle_common\modules\oracle.jdbc7\ojdbc7_g.jar;C:\Oracle\Middleware\Oracle_Home\oracle_common\modules\oracle.jdbc7\ojdbc7dms.jar;C:\Oracle\Middleware\Oracle_Home\oracle_common\modules\oracle.jdbc7\ons.jar;C:\Oracle\Middleware\Oracle_Home\oracle_common\modules\oracle.jdbc7\oraclepki.jar;C:\Oracle\Middleware\Oracle_Home\oracle_common\modules\oracle.jdbc7\orai18n.jar;C:\Oracle\Middleware\Oracle_Home\oracle_common\modules\oracle.jdbc7\orai18n-mapping.jar;C:\Oracle\Middleware\Oracle_Home\oracle_common\modules\oracle.jdbc7\osdt_cert.jar;C:\Oracle\Middleware\Oracle_Home\oracle_common\modules\oracle.jdbc7\osdt_core.jar;C:\Oracle\Middleware\Oracle_Home\oracle_common\modules\oracle.jdbc7\ucp.jar;D:\Oracle\Middleware\Oracle_Home\oracle_common\modules\oracle.pki_12.1.2;%JAVA_HOME%\lib\tools.jar;%PROFILE_CLASSPATH%;%ANT_HOME%/lib/ant-all.jar;%ANT_CONTRIB%/lib/ant-contrib.jar;%CAM_NODEMANAGER_JAR_PATH%我还访问了服务的windows注册表,并将相同的jars添加到CLASSPATH行参数中。
如果我的应用程序启动,我可以看到jars在我的类路径中。
但是如何验证实际使用的是哪个ojdbc驱动程序呢?这是更新司机的正确方法吗?
(现在,在人们开始说我们不应该运行Java 7应用程序之前.这是一个即将被替换的遗留应用程序,但现在我必须使用这个应用程序:)
发布于 2018-04-12 17:13:04
但是如何验证实际使用的是哪个ojdbc驱动程序呢?
您可以询问驱动程序getMetaData方法。
相关部分的简单示例(conn是数据库连接)。
md = conn.getMetaData();
println (md.getDriverVersion());这给了.
12.1.0.2.0这是在使用的驱动程序jar的META/MANIFEST.MF文件中找到的版本。
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.7.1
Created-By: 20.75-b01 (Sun Microsystems Inc.)
Implementation-Vendor: Oracle Corporation
Implementation-Title: JDBC
Implementation-Version: 12.1.0.2.0 更新JDBC环境时,重要的是检查JDBC兼容性矩阵。
发布于 2018-04-23 14:25:04
您有正确的文档链接。看看这个页面,它说要做客户端工具包的自定义安装。这意味着您需要从该工具包中获取所有列出的jar文件。您不能使用工具包中的新ojdbc7.jar文件和WLS附带的ucp.jar文件。他们必须是一组匹配的。如果您正在使用FMW或FA,则需要使用ojdbc7dms.jar。否则,使用ojdbc7.jar。ojdbc7_g.jar只用于调试。
使用conn.getMetaData().getDriverVersion()将告诉您正在使用的ojdbc7.jar版本,但它不会告诉您有一组不匹配的jar文件。
https://stackoverflow.com/questions/49801752
复制相似问题