Spring batch 在Spring批处理查询中使用命名参数
我有一个spring批处理作业,其中一个步骤如下:Spring batch 在Spring批处理查询中使用命名参数,spring-batch,Spring Batch,我有一个spring批处理作业,其中一个步骤如下: <bean id="abstractReader" class="org.springframework.batch.item.database.JdbcCursorItemReader" abstract="true"> <property name="fetchSize" value="1000"/> <property name="verifyCursorPosition" value="tr
<bean id="abstractReader" class="org.springframework.batch.item.database.JdbcCursorItemReader" abstract="true">
<property name="fetchSize" value="1000"/>
<property name="verifyCursorPosition" value="true"/>
<property name="rowMapper">
<bean class="org.springframework.jdbc.core.ColumnMapRowMapper"/>
</property>
</bean>
<bean id="masterReader" parent="abstractReader" abstract="true">
<property name="fetchSize" value="1000"/>
<property name="dataSource" ref="masterDataSource"/>
</bean>
<bean id="abstractWriter" class="org.springframework.batch.item.database.JdbcBatchItemWriter" abstract="true">
<property name="assertUpdates" value="false"/>
<property name="itemPreparedStatementSetter">
<bean class="org.springframework.batch.item.database.support.ColumnMapItemPreparedStatementSetter"/>
</property>
</bean>
<bean id="masterWriter" parent="abstractWriter" abstract="true">
<property name="dataSource" ref="masterDataSource"/>
</bean>
<bean id="tempWriter" parent="masterWriter" scope="step">
<property name="sql" value="${insert_query}"/>
</bean>
<bean id="tempReader" parent="masterReader" scope="step">
<property name="sql" value="${select_query}"/>
</bean>
<batch:step id="tempStep">
<batch:tasklet>
<batch:chunk commit-interval="100"
reader="tempReader"
writer="tempWriter"/>
</batch:tasklet>
</batch:step>
有没有办法在查询中提供命名参数支持?目前JdbcCursorItemReader正在使用PreparedStatement。(太多?现在查询中)使用
JdbcCursorItemReader
是没有办法的,但是您可以使用JdbcPagingItemReader
来完成。您可以在以下文档中阅读有关该阅读器的更多信息: