【问题标题】:Ojdbc driver errorJDBC驱动错误
【发布时间】:2016-10-27 06:39:13
【问题描述】:

我正在尝试优化从我的 Java 应用程序到 Oracle 数据库的查询性能,因为 sql developer tool 执行的相同查询比 java 应用程序更快。 我有两个不同的数据库(一个用于测试/开发,另一个用于生产)。

开发者数据库版本为:11g Enterprise Edition Release 11.2.0.1.0 - 64bit

生产数据库版本为:11g Enterprise Edition Release 11.2.0.3.0 - 64bit

我的 java 应用程序使用 ojdbc14 驱动程序,这对两个数据库都适用,但性能查询运行缓慢。因此,经过调查,我了解到开始提高性能的一个好方法是在 java 应用程序中使用正确的 ojdbc 驱动程序(根据数据库版本)。于是我下载了 ojdbc6 驱动(适用于 11.2.0.3 oracle 版本)。这在开发人员数据库中工作正常,但是当我尝试连接生产数据库时出现下一个错误:

java.lang.NoSuchMethodError: oracle.i18n.text.converter.CharacterConverterOGS.getInstance(I)Loracle/i18n/text/converter/CharacterConverter;

我尝试使用不同的 ojdbc 驱动程序版本(5、6),但我得到了相同的错误,仅在生产数据库中。

有什么帮助吗?

对不起我的英语。

问候。

编辑 1:

@CSK

我正在使用 Spring MVC,这是用于数据库连接的 ApplitacionContext xml:

<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
    <property name="driverClass" value="${jdbc.driverClassName}"/>
    <property name="jdbcUrl" value="${jdbc.url}"/>
    <property name="user" value="${jdbc.username}"/>
    <property name="password" value="${jdbc.password}"/>
    <property name="maxPoolSize" value="${jdbc.maxPoolSize}" />
    <property name="minPoolSize" value="${jdbc.minPoolSize}" />
    <property name="maxStatements" value="${jdbc.maxStatements}" />
</bean>

<bean id="dataSourceDataStage" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
    <property name="driverClass" value="${jdbc.datastage.driverClassName}"/>
    <property name="jdbcUrl" value="${jdbc.datastage.url}"/>
    <property name="user" value="${jdbc.datastage.username}"/>
    <property name="password" value="${jdbc.datastage.password}"/>
    <property name="maxPoolSize" value="${jdbc.datastage.maxPoolSize}" />
    <property name="minPoolSize" value="${jdbc.datastage.minPoolSize}" />
    <property name="maxStatements" value="${jdbc.datastage.maxStatements}" />

【问题讨论】:

  • 试试 oracle upc 连接池。你需要在这里粘贴代码

标签: java database oracle oracle11g ojdbc


【解决方案1】:

我认为生产中的类路径有问题。因此,如果可能,请尝试将 jar 文件 (orai18n.jar) 直接添加到您的项目中并重新检查。
就我而言,它有效,希望对您有所帮助!

【讨论】:

  • 是的,我使用了错误的 orai18n jar。我从 oracle web 再次下载了它,现在它工作正常。谢谢。问候
猜你喜欢
  • 1970-01-01
  • 2013-08-27
  • 2014-10-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-30
  • 2012-09-16
  • 2013-03-26
相关资源
最近更新 更多