Spring boot Spring 5替换CommonsDbcpNativeJdbcExtractor
我有一个项目配置了Spring boot Spring 5替换CommonsDbcpNativeJdbcExtractor,spring-boot,spring-jdbc,Spring Boot,Spring Jdbc,我有一个项目配置了spring boot 1.5,我正在将应用程序更新为spring boot 2.XXX,应用程序bean配置在xml文件中,该文件的一部分包含: <bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName" value="java:comp/env/jdbc/A_DATASOURCE"/>
spring boot 1.5
,我正在将应用程序更新为spring boot 2.XXX
,应用程序bean配置在xml
文件中,该文件的一部分包含:
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="java:comp/env/jdbc/A_DATASOURCE"/>
</bean>
<bean id="dbcpNativeJdbcExtractor" class="org.springframework.jdbc.support.nativejdbc.CommonsDbcpNativeJdbcExtractor" />
<orcl:aq-jms-connection-factory id="jmsQueueConnectionFactory"
use-local-data-source-transaction="true" native-jdbc-extractor="dbcpNativeJdbcExtractor"
data-source="dataSource" />
如您所见,有一个JMS侦听器连接到Oracle队列
当我更新到spring 2.XXX
时,出现了一个类未找到异常,结果是org.springframework.jdbc.support.nativejdbc
包已从spring-jdbc-5.0.8jar
中删除,并且只说要使用apachedbcp
替代方案(我找不到)
我知道有一个问题,但我不认为这与我的问题有关
希望你能帮助我整个层级结构已经不存在,不再存在的东西也无法使用。不确定对
aq-jms连接工厂的支持在哪里,但不确定是否仍然保持这种支持。因此,要么不升级,要么找出一种不需要它的方法(jdbc 4可以使用unwrap
来获得实际的底层连接)。您能详细介绍一下使用jdbc4的unwrap
吗?要获得实际的底层连接,在连接上有一个unwrap
方法。因此,类似于connection.unwrap(OracleConnection.class)
的东西应该可以得到实际的底层连接。然而,这可能需要额外升级aq-jms连接工厂
,我不确定它是否支持spring5.0。