Spring Batch의 기본적인 기능들을 지난 포스팅들을 통해 알아보았다. 이번에 알아볼 Skip/Retry도 Spring Batch에서는 기본적으로 제공을 하는 기능이다. 간단한 예제를 통해서 알아보자. us-500.csv (웹에서 쉽게 구할수 있음) Chunk Example을 볼때 잠깐 나왔었던 500 row의 csv 파일이다. 테스트를 위해 사용이 될 것이고 Chunk 방식의 Batch를 사용해 이 파일을 읽어서 가공하고 DB에 쓸 것이다. 테스트는 파일을 가공하는 단계(Processor)에서 강제로 오류를 내고 그것을 잘 skip하는지 또는 잘 retry 하는지 살펴볼것이다. 여기서는 일단 Art라는 사람과 Donette라는 사람이 있다는것 정도 알아두자. Spring Batch Skip Exa..
Chunk 방식은 정형화된 방식이라면 Tasklet 방식은 비교적 자유로운 방식이다. 따라서 실제로 batch를 사용할때 적어도 내가 경험해본 프로젝트에서는 Tasklet 방식을 훨씬 선호하였다. 이것도 Chunk와 마찬가지로 전에 Xml Config 방식으로 어떻게 사용하는지 살펴본적이 있는데 Springboot 기반의 Batch에서는 어떻게 사용을 하는지 알아보자. batch application 구조를 어떻게 잡느냐에 따라 Tasklet을 작성하는 방법은 다양하게 변할 수 있다. (Tasklet 내부를 작성하는건 동일하다. 표현법만 다를 뿐이다..) 필자는 크게 두가지 방법으로 구성을 해봤는데 Job 구성 클래스 외부에 tasklet 클래스를 만들어서 참조하는 방식이 있다. 이것은 tasklet 클..