작성
·
247
0
안녕하세요. @JobScope에 대해서 궁금한게 생겨서요!
@Jobscope 를 쓰면 갖는 이점에 대해서는 이해했습니다. 웹어플리케이션이 실행될 때, Job Bean 객체에는 Scope의 JDKProxy 또는 CGLibProxy가 주입되는 것을 이해했고 Step 메소드 실행 시, 실제 Step 객체가 주입되는 것을 이해했습니다.
그러므로 여러 스레드 ( 병렬 처리 ) 가 요청에 대한 처리를 할 때, thread safe에 대한 이점도 있을 거고 동시성에도 이점이 있을 거라고 생각됩니다.
여기서 궁금한게, @Value JobParmeters를 바인딩 하는 부분이 궁금한데요.
질문
1. 이 JobParmeters는 그럼 Job에서 설정한 여러 Jobpameters 중 꼭 한가지 key값이여야만 하는 걸까요? 가령, name, requestDate 라한다면 둘 중 하나를 선택해도 무방한거죠? 두개는 안될까요?
2. 당연한 말이겠지만 여러 Job들에서 다른 Step을 공유하기 위해선 이 Jobparmeter를 정적인 변수보다는 requestDate와 같은 yyyyhhmm ss 같은 변수를 사용하는 것이 좋겠죠?
감사합니다!
답변 1
0
바인딩 하는 JobParmeters 는 원하는 key 로 설정하시면 되는데요.. 정확하게 질문의 의미가 무엇인지 조금 더 설명이 가능할까요?
이 질문도 정확한 의미를 알기 어려운데요.. 음.. 여러 Job 들 간 Step 을 공유하는 데 정적인 변수나 동적인 변수를 선언함에 따라 각각 어떤 문제가 발생할 수 있는지를 질문하신 건가요?