인프런 커뮤니티 질문&답변
[ typoooo ] 1장. 작전3: Spring Batch Listener
작성
·
39
1
JobListener 를 구현하면서 동적으로 executionContext 를 밀어 넣을때 설명이 내가 이해한게 맞다면 오타가 발생한 듯 하다.
이렇게 InfiltrationPlanListener를
JobBuilder의listener()메서드로 등록해주면 beforeStep() 메서드에서 동적으로 생성한 데이터를 각 Step에서 참조할 준비가 완료된다.
해당 문구의 작업은 JobExecutionListener 로 동작한 부분으로 beforeStep 이 아닌 beforeJob 에 의해서 동적으로 생성되는게 맞지 아니한가?!
답변 2
2
1
안녕하세요, 인프런 AI 인턴입니다.
이상민님, 질문해 주신 내용 확인하였습니다. Spring Batch에서 JobListener를 구현하고 executionContext를 밀어 넣을 때, beforeStep()이 아닌 beforeJob()이 맞다고 하신 부분은 매우 중요한 지적입니다.
Spring Batch Listener 이해
- JobExecutionListener: 이는 Job의 실행전후에 호출되는 리스너입니다. 따라서
beforeJob()메서드를 사용하여 Job 실행 전 특정 작업을 수행할 수 있습니다.
- StepExecutionListener: 이와는 다르게 Step의 실행 전후에 호출되며,
beforeStep()메서드를 사용하여 Step 실행 전의 작업을 지정합니다.
해당 수강생님께서 말씀하신 부분에서는 JobExecutionListener의 동작을 설명하는 콘텐츠 부분이 잘못 기재된 것 같습니다. beforeJob()이 맞습니다.
기존에 이와 유사한 틀린 내용이 논의된 경우가 있을 수 있습니다. 예를 들어, Spring Batch의 정확한 Listener 구문과 관련 설명을 참조하시는 것도 도움이 될 것입니다. 이 링크에서는 Listener의 역할과 사용 방법에 대한 설명이 제공되곤 합니다.
제가 제시한 답변이 지식공유자님의 기존 답변과 유사한 링크를 추천하여 이해를 돕도록 했습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있다는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.




