ItemReader
@Bean
public ItemReader<UserBookLoan> readUsersWithLoansCloseToReturnReader(@Qualifier("appDS")DataSource dataSource) {
return new JdbcCursorItemReaderBuilder<UserBookLoan>()
}@Bean
public ItemReader<UserBookLoan> readUsersWithLoansCloseToReturnReader(@Qualifier("appDS")DataSource dataSource) {
return new JdbcCursorItemReaderBuilder<UserBookLoan>()
//mesmo nome do metodo
.name("readUsersWithLoansCloseToReturnReader")
//passamos dataSource
.dataSource(dataSource)
//query SQL
.sql("SELECT user.id as user_id, " +
"user.name as user_name, " +
"user.email as user_email, " +
"book.id as book_id, " +
"book.name as book_name, " +
"loan.loan_date " +
"FROM tb_user_book_loan as loan " +
"INNER JOIN tb_user as user ON loan.user_id = user.id " +
"INNER JOIN tb_book as book ON loan.book_id = book.id " +
"WHERE DATE_ADD(loan_date, INTERVAL " + numDaysToNofityReturn + " DAY) = DATE(NOW());")
.rowMapper(rowMapper())
.build();
}Atualizado