@Bean @StepScope public JpaPagingItemReader<Orders> ordersReader(@Value("#{jobParameters['targetDate']}") String targetDate){ log.info("[Reader] 정산 집계 대상 날짜 : {}", targetDate); return new JpaPagingItemReaderBuilder<Orders>() .name("ordersReader") .entityManagerFactory(entityManagerFactory) .pageSize(1000) .queryString("SELECT o FROM ORDERS o WHERE o.orderDate = :targetDate ORDER BY o.id") .parameterValues(Collections.singletonMap("targetDate", LocalDate.parse(targetDate))) .build(); }
@StepScope어노테이션을 적지 않으면 서버 실행 시점에 오류가 발생할 수 있으니, 해당 어노테이션을 통해 지연된 빈 생성을 꼭 해주세요.