본문 바로가기
반응형

batch8

Spring Batch 파일 읽기_추가 설정(파일 인코딩, 첫행 무시, 에러 시 패스) 이전 포스팅에서 Spring Batch 사용시 reader 부분에서 파일로 읽는것에 대해 다룬 포스팅이 있다. 해당 파일을 읽을때 몇가지 설정할수 있는것들이 있어 추가 포스팅으로 작성한다. 파일 인코딩 설정파일을 읽을때 인코딩 설정을 할수가 있다.FlatFileItemReader 를 return 하는 reader 메서드에 설정하며 아래와 같다...이상 생략public FlatFileItemReaderT> reader (ClassT> type, String[] names, String delimiter) {     return new FlatFileItemReaderBuilderT>()          .delimited()          .delimiter(delimiter)      .. 2024. 6. 19.
Spring Batch 파일 읽기(FlatFileItemReader / MultiResourceItemReader) 이전 포스팅에서 Spring Batch 에 대해서 다룬 글이 있다.자세한 내용은 아래 참고 포스팅을 참고 바란다. 이번 포스팅은 Batch 의 chunk 방식으로 reader 에서 데이터를 읽을 때 DB가 아닌 파일을 읽는 방법에 대해서 다루려고 한다. 결국 Step에서 reader 설정하는 부분을 fileReader 로 변경을 해주면 된다. 아래는 step 예제 코드이다...이상 생략 private final FileItemReader fileReader; @Bean public Step mainStep() {     return new StepBuilder("mainStep", jobRepository)      .,TestDto>chunk(chunkSize,platformTransactionM.. 2024. 6. 18.
Spring Batch (part 4. 프로젝트 적용 - Tasklet 방식) 이전 포스팅에서 Batch 의 Chunk 방식에 대해서 예제 코드를 보았다.자세한 내용은 참고 포스팅 참고 바란다. 이번 포스팅은 좀더 간단해 보이는 Tasklet 방식의 예제를 볼것이다.Tasklet 방식에 대한 예제는 아래와 같다. TaskletJobConfig@Configuration@RequiredArgsConstructorpublic class TestJob2 {     private final JobRepository jobRepository;     private final TestStep2 testStep2;     @Bean     public Job testSimpleJob2(){         System.out.println("TEST");         return new JobB.. 2024. 6. 3.
Spring Batch (part 3. 프로젝트 적용 - Chunk 방식) 이전에 포스팅에서 배치에 대해서 소개 및 용어 정리를 했었다.자세한 내용은 참고 포스팅 참고 바란다. 이번 포스팅에서는 Java 프로젝트 위에 올려볼 예정이다. 먼저 사용을 위해서는 Maven 등록을 해준다...이상 생략dependency>     groupId>org.springframework.batchgroupId>     artifactId>spring-batch-testartifactId>     scope>testscope>dependency>..이하 생략 그리고 main 메서드 위에 배치 사용을 위한 annotation을 달아준다.@EnableBatchProcessing@SpringBootApplicationpublic class TestBatchApplication {     public .. 2024. 5. 20.
Spring Batch (part 2. 배치 종류 설명) Batch 에 대해서 이전 포스팅에서 소개를 하였다.자세한 내용은 참고 포스팅 참고 바란다. 이번 포스팅에서는 Spring Batch 에서 사용할 수 있는 배치의 종류에 대해 설명할 것이다. 스프링에서 Batch를 사용하는건 다음과 같다.Job은 여러가지의 Step 모음으로 구성되어있고 Job은 순차적인 Step을 수행하며 Batch 를 수행하게 된다.Step 은 Tasklet 처리 방식과 Chunk 지향 처리 방식을 지원한다. Tasklet: 데이터 처리과정이 tasklet안에서 한번에 이뤄진다.배치 처리과정이 쉬운 경우 쉽게 사용되며, 대량처리 경우 더 복잡해질 수 있다. Chunksize: chunksize 단위로 데이터가 페이징처럼 처리된다.대용량 데이터를 처리할때 사용되며, reader / pr.. 2024. 5. 19.
window batch파일 셋팅(cmd 명령어 사용 및 사용결과 변수 할당 / 주석넣기 / 일시정지pause) window에서 batch파일 내에서 사용하는 몇가지 정리해서 적어본다. CMD 명령어 사용 cmd 명령어를 사용하기 위해서는 call 명령어를 사용한다. call ipconfig 라고 하면 ipconfig 의 명령어가 실행이 된다. 그러면서 cmd의 grep인 findstr을 사용하면 call ipconfig | findstr inet 을 하면 해당 라인의 정보가 나올 것이다. 만약 ip정보를 특정 변수에 담고 싶다면. for /f 명령어를 사용하면 된다. for /f "tokens=2 delims= " %%a in ('call ipconfig ^| findstr inet') do (set ip=%%a) 로 하면 되는데 - for /f 는 해당 라인을 반복해서 출력이고 한라인일 경우엔 한번만 돈다. -.. 2023. 12. 11.
배치와 데몬의 차이 배치(Batch)란? 배치는 일반 프로세스의 일종으로 일련의 작업을 지정한 특정 시간에 실행한다. 지정한 시간 이후에는 자원을 거의 소비하지 않는 것이 특징이다. 데몬(Deamon)이란? 특정 서비스를 위해 백그라운드 상태에서 계속 실행되는 서버 프로세스이다. 일반적으로 각 서비스가 사용하는 port를 관리하는 관리하는 데몬이 존재하고 데몬은 서버가 부팅될 때 메모리에 로딩이 되고 서버가 죽을 때까지 계속 자원을 할당받고 있다. 데몬은 서버가 죽을 때까지 자원을 점유하고 있는 형태여서 많은 데몬이 실행된다면 자원 소비가 크고 윈도우에서는 데몬을 서비스라 부르기에 작업관리자를 열어보면 서비스가 띄워져 있는것들을 볼수가 있다. 2023. 3. 8.
Spring Batch (part 1. 소개) 스프링에는 다양한 기능들이 있고 우리가 실제로 사용하는것은 프로젝트에 맞게 다양하다.지금까지 다뤄온 글들과는 다른 기능을 하나 소개 해보려고 한다. 먼저 이름을 소개하면 스프링 배치 이다.자세한 내용은 스프링 공식 홈페이지에서 확인을 해볼수가 있다.https://spring.io/projects/spring-batch Spring BatchSpring Batch provides reusable functions that are essential in processing large volumes of records, including logging/tracing, transaction management, job processing statistics, job restart, skip, and resour.. 2022. 8. 25.
반응형