반응형
mybatis를 사용하다 보면 성능을 위해 bulk insert를 사용할 때가 있다
bulk insert 쿼리는 다음과 같다.
<insert id="bulkInsert" keyColumn="id" keyProperty="id" useGeneratedKeys="true"
parameterType="java.util.HashMap">
INSERT INTO test_table(name, age, register_date, modify_date)
VALUES
<foreach collection="list" item="map" index="index" separator="," open="" close="">
(#{map.name}, #{map.age}, #{map.register_date}, #{map.modify_date})
</foreach>
</insert>
저장할 데이터를 List에 담고 foreach를 사용하여
insert문을 만들어 한번에 저장하는 방법이다.
한번에 너무 많은 데이터를 저장하려고 하면
성능상 문제가 생길 수 있으므로
대량으로 insert 할 경우
보통 1,000건 정도로 잘라서 저장한다.
반응형
'개발' 카테고리의 다른 글
mysql 접속 설정 확인 쿼리 (0) | 2020.11.29 |
---|---|
검색 봇 웹페이지 수집 허용/제한 설정 (0) | 2020.11.29 |
안드로이드/IOS 에서 입력 필드 포커스 날리기 (0) | 2020.11.29 |
안드로이드 usb디버깅 크롬으로 확인하기 (0) | 2020.11.29 |
스프링 properties profile 적용하기 (0) | 2020.11.29 |