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 ทดสอบโดยที่ col1 = :param
มีวิธีใดที่จะทำให้ JdbcCursorItemReader ทำงานร่วมกับ NamedPreparedStatementSetter แทนที่จะเป็น PreparationStatementSetter แบบธรรมดาได้หรือไม่
ขอบคุณ