Spring Batch JdbcCursorItemReader может принимать preparedStatementSetter:
<bean id="reader" class="org.springframework.batch.item.database.JdbcCursorItemReader">
<property name="dataSource" ref="..." />
<property name="sql" value="SELECT * FROM test WHERE col1 = ?">
<property name="rowMapper" ref="..." />
<property name="preparedStatementSetter" ref="..." />
</bean>
Это хорошо работает, если sql использует ? в качестве заполнителей, как в приведенном выше примере. Однако наш ранее существовавший sql использует именованные параметры, например. SELECT * FROM test WHERE col1 = :param .
Есть ли способ заставить JdbcCursorItemReader работать с NamedPreparedStatementSetter, а не с простым PreparedStatementSetter?
Спасибо