私はSpring Batchコードで次のようなエラーに直面しています:クラスパスリソースで定義された名前「itemReader」を持つBeanの作成エラー、タイプ「$ Proxy0」のプロパティ値をプロパティ「preparedStatementSetter」に必要なタイプに変換できませんでした。
これは私の ItemReader コードです:
<beans:bean id="itemReader"
class="org.springframework.batch.item.database.JdbcCursorItemReader">
<beans:property name="dataSource" ref="dataSource"/>
<beans:property name="sql" value="select * from Trans_Tst WHERE id =?"/>
<beans:property name="rowMapper" ref="romMapper"/>
<beans:property name="preparedStatementSetter" ref="ReaderSqlParameterSetter"/>
</beans:bean>
<beans:bean id="ReaderSqlParameterSetter"
class="sa.com.anb.itg.dev.settlement.batch.ReaderSqlParameterSetter" scope="step">
<beans:property name="id" value="#{jobParameters[id]}"/>
</beans:bean>
これは私の ReaderSqlParameterSetter クラスです:
package sa.com.anb.itg.dev.settlement.batch;
import java.sql.PreparedStatement;
import org.springframework.batch.item.database.ItemPreparedStatementSetter;
import java.sql.SQLException;
public class ReaderSqlParameterSetter implements
ItemPreparedStatementSetter<transactionas>{
public void setValues(transactionas transactionas,PreparedStatement ps)
throws SQLException {
ps.setInt(1, transactionas.GetID());
}
}
<beans:bean id="jdbcWriter"
class="org.springframework.batch.item.database.JdbcBatchItemWriter">
<beans:property name="dataSource" ref="dataSource"/>
<beans:property name="sql" value="update Trans_Tst set ()amount) values (?)
where id= ?"/>
<beans:property name="preparedStatementSetter"
ref="WriterSqlParameterSetter"/>
</beans:bean>
<beans:bean id="WriterSqlParameterSetter"
class="sa.com.anb.itg.dev.settlement.batch.WriterSqlParameterSetter" scope="step">
<beans:property name="amount" value="#{jobParameters[amount]}"/>
<beans:property name="id" value="#{jobParameters[id]}"/>
</beans:bean>
public class WriterSqlParameterSetter implements PreparedStatementSetter {
transactionas transactionas = new transactionas();
public void setValues(PreparedStatement ps) throws SQLException {
ps.setDouble(1, transactionas.GetAmount());
ps.setInt(2, transactionas.GetID());
}
}
誰でも私を助けてもらえますか?