본문 바로가기

dev/JPA

JPA Insert Batch

JPA에서 batch를 사용하면 대량의 데이터를 효율적으로 추가할 수 있습니다.

 

예제 batch 코드

 

예제 batch 코드를 보게 되면

 

데이터베이스에 저장할 batch 사이즈 변수 cnt를 선언합니다.(81라인)

 

여기서 설정한 값 5는 앞에서 생성한 employee 테이블의 기본키 sequence의 increment와 일치하기 위해서 5로 설정했습니다.

 

직원 DTO 리스트를 파라미터로 받아서 루프를 실행합니다.(83~104라인)

 

직원 DTO의 속성값들을 하나씩 읽어서 Employee 엔티티 객체에 저장합니다.(84~93라인)

 

Employee 엔티티 객체를 영속성 컨텍스트에 저장하고 cnt를 1씩 증가합니다.(95라인)

 

5건마다 영속성 컨텍스트에 있는 데이터를 데이터베이스에 저장하고 초기화합니다.(98~101라인)

 

batch 실행 전

 

batch 실행 후

 

코드를 실행하면 정상적으로 실행되었음을 확인할 수 있습니다.

'dev > JPA' 카테고리의 다른 글

JPA QueryDSL Paging  (0) 2023.08.31
JPA QueryDSL 집계 쿼리  (0) 2023.08.31
JPA ID SEQUENCE  (0) 2023.08.30
JPA Infinite Recursion 예외 처리  (0) 2023.08.29
Spring Boot JPA QueryDSL  (0) 2023.08.29