我在使用tomcat数据源和OracleConnection时遇到了奇怪的行为
案例1:
我已经在Tomcat8中为oracle12c配置了数据源,并将ojdbc8.jar放在tomcat_home/lib文件夹中。在那之后,我执行下面的代码,它正在工作
try
{
if (connection.isWrapperFor(OracleConnection.class))
{
oracleConnection = connection.unwrap(OracleConnection.class); //working fine
}
}
catch (SQLException ex)
{
}案例2:
重新配置数据源,并将ojdbc8.jar放在tomcat_home/lib文件夹以及动态web项目的WEB-INF/lib中。在那之后,我执行上面的代码,它没有解开连接,并且我在oracleConnection中得到了null。
为什么会发生这种情况?
发布于 2020-01-15 00:54:09
由于您的tomcat目录已经有了依赖项,我们需要知道您的maven (gradle?)依赖关系看起来像这样。必须将依赖项设置为scope:否则您将拥有重复的ojdbc驱动程序。
<dependency>
<groupId>com.oracle.jdbc</groupId>
<artifactId>ojdbc[number_here]</artifactId>
<version>[version_here]</version>
<scope>provided</scope>
</dependency>https://stackoverflow.com/questions/59201528
复制相似问题