0

我意识到 OracleLobHandler 已被贬低,而 DefaultLobHandler 是首选。我想问一下,我用什么来代替nativeJdbcExtractor?

<bean id="jobRepository" class="org.springframework.batch.core.repository.support.JobRepositoryFactoryBean"> 
<property name="dataSource" ref="dataSource" /> 
<property name="transactionManager" ref="jobTransactionManager" /> 
<property name="isolationLevelForCreate" value="ISOLATION_READ_COMMITTED" /> 
<property name="lobHandler"> <bean class="org.springframework.jdbc.support.lob.**OracleLobHandler**"> <property name="nativeJdbcExtractor"> 
<bean class="org.springframework.jdbc.support.nativejdbc.JBossNativeJdbcExtractor"/> 
</property> </bean> </property> </bean>
4

1 回答 1

1

OracleLobHandler似乎在 Spring 3.2 中已被弃用。

DefaultLobHandler 中,您看到任何nativeJdbcExtractor字段吗?不,所以你不能设置任何nativeJdbcExtractor东西......只是尽量不要替换它。

检查文档:

已弃用:支持 Oracle 10g 驱动程序及更高版本的 DefaultLobHandler。考虑使用 10g/11g 驱动程序,甚至针对 Oracle 9i 数据库!DefaultLobHandler.setCreateTemporaryLob(boolean) 直接等效于这个 OracleLobHandler 的实现策略,只是使用标准的 JDBC 4.0 API。也就是说,在大多数情况下,常规 DefaultLobHandler 设置也可以正常工作。

于 2013-09-18T10:04:58.973 回答