일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- Spring Framework
- 일괄처리
- mavenCentral
- Spring Batch
- 스프링 빈
- open session in view
- Open EntityManager In View
- 싱글 스레드
- @componentScan
- @Configuration
- View Resolver
- 필드 주입
- 메서드 주입
- 가변 객체
- Request flow
- 참조 타입
- 컴포넌트스캔
- Handler Adepter
- Batch
- 이펙티브 자바
- 불변 객체
- 생성자 주입
- open-in-view
- 익명 함수
- OSIV
- Dispatcher Servlet
- @FunctionalInterface
- spring boot
- @Bean
- 빈
- Today
- Total
목록Spring Framework (3)
보다 더 나은 내일의 나를 위해
OSIV Open In View는 Open Session In View라 불리며 관례상 OSIV라 부릅니다. OSIV는 영속성 컨텍스트를 트랜잭션이 종료되어도 VIew 렌더링 또는 응답 시까지 살아있도록 합니다. Spring Boot에서는 spring.jpa.open-in-view의 기본값이 true로 되어있습니다. 이 값이 true 일 때와 false 일 때 무엇이 다를까요? True라면? spring.jpa.open-in-view의 값이 기본값인 true라면 트랜잭션이 종료되어도 영속성 컨텍스트가 살아있다. 예를 들어 Book와 Bookcase라는 엔티티가 있습니다. // 책 @Entity public class Book { ... @ManyToOne(fetch = FetchType.LAZY) @Jo..
이 포스트는 공식 문서를 참고하여 작성되었습니다. 예제 코드는 깃허브에 작성되어 있습니다. Person package com.example.batch.model; public class Person { private String lastName; private String firstName; // Constructor, getter, setter, toString... } 읽어온 데이터로 구성될 객체입니다. BatchConfiguration package com.example.batch.config; // ... public class BatchConfiguration { // ... @Bean public FlatFileItemReader reader() { return new FlatFileItem..
스프링 배치 (Spring Batch) 일괄 처리를 위한 오픈소스 프레임 워크 여러 Job을 순차적으로 처리한다. 보통 어떤 경우에 사용할까? 대용량 비지니스 데이터를 복잡한 작업으로 처리해야하는 경우 특정한 시점에스케쥴러를 통해 자동화된 작업이 필요한 경우 ( ex. 푸시알림, 월 별 리포트) 대용량 데이터 포멧을 변경, 유효성 검사 등의 작업을 트랜젝션 안에서 처리 후 기록해야하는 경우 스프링 배치 시나리오 읽기 → 데이터 저장소(데이터베이스, 파일 등)에서 데이터를 읽어온다. 처리 → 데이터를 원하는 대로 가공 / 처리 한다. 쓰기 → 처리 완료된 데이터를 저장한다. 스프링 배치 관계도 Job과 Step은 1:M의 연관 관계를 맺고 있다. Step와 ItemReader, ItemProcessor,..