무지 단순한 소스지만 내 스스로 만들어본 첫번째 스프링 배치 프로그램이다.
파일로부터 데이터를 읽어서 다른 파일에 기록하도록 작성했다.
이 작업을 위해 domain객체, fieldSetMapper객체, fieldSetCreator, 로깅을 위한 advice 만 구현하면된다. 물론 비즈니스 로직이 없어서 간단할 수도 있겠지만..

jobRepository로 디비를 사용하지 않고 메모리를 사용하고 싶었다. 이에 대한 내용이 레퍼런스에 나온다.
 
<bean id="jobRepository" class=".....MapJobRepositoryFactoryBean">

이렇게 설정하면 된단다. 근데 이렇게 하면 에러난다. transactionManager가 필수란다. 결국 트랜잭션 매니저를 설정했다.

<bean id="jobRepository" class="......MapJobRepositoryFactoryBean"
p:transactionManager-ref="transactionManager"
lazy-init="true" autowire-candidate="false" />

MapJobRepositoryFactoryBean 내부를 보면 repository로 맵을 이용하는데 트랜잭션 매니저는 왜 필요한것인지..
어렵다

+ Recent posts