강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của yhwjjang19954515
yhwjjang19954515

câu hỏi đã được viết

đợt xuân

DB - JpaItemWriter

jpa의 경우 벌크성 insert 지원이 안되나요???

Viết

·

901

0

jpa의 경우 bulk insert 가 지원되지 않는지 궁금합니다.
spring-bootspring-batch

Câu trả lời 2

2

leaven님의 프로필 이미지
leaven
Người chia sẻ kiến thức

해당 부분은 스프링 배치 영역에서 조금 벗어난 부분이라 자세하게 답변드리기는 곤란한 점 양해해 주시기 바랍니다.

일괄처리는 다음과 같을 것입니다

INSERT INTO person (name) VALUES

('name1'),

('name2'),

('name3');

기본적으로 JPA 에서는 Auto Increment 일 경우엔 위 설정 방식을 지원하지 않습니다.

Auto Increment가 아닐 경우엔  spring.jpa.properties.hibernate.jdbc.batch_size=10 과 같이 해서 일괄처리가 되긴 합니다.

그리고  DB 종류에 따라 설정을 다르게 해야 할 수도 있습니다.

그래서  MYSQL 에서는 시퀀스 전략을 auto_increment  가 아닌 Table 로 해야 합니다.

그리고 MYSQL 같은 경우에 jdbc:mysql:://DB주소:포트/스키마?rewriteBatchedStatements=true 와 같이 rewriteBatchedStatements 의 옵션도 주어야 합니다.

그리고 사실  이 기술은 jpa 기술이 아닌 jdbc batch 기술인데 jpa 가 내부적으로 활용하고 있을 뿐입니다.

관련해서는 여러 자료가 있으니 참고해 주시기 바랍니다.

 

0

rere님의 프로필 이미지
rere
Người đặt câu hỏi

db는 인메모리 h2를 사용중인데 h2 로그를 보니 Multiple rows insert가 되지 않습니다. 혹시 방법이 있다면 알려주시면 감사하겠습니다.!!!!

Hình ảnh hồ sơ của yhwjjang19954515
yhwjjang19954515

câu hỏi đã được viết

Đặt câu hỏi