IT/Java
JPA메서드 save 와 saveAll 비교
성준하이
2024. 1. 19. 09:00
반응형
Entity 를 사용하여 save를 할 경우 정상일 경우라면 insert 가 된다.
saveAll 함수를 사용하게 될경우엔
List<Entity> 를 형으로 받아서 처리를 해주고, 리스트를 bulk insert 처럼 삽입을 할수 있다.
둘의 성능 차이가 궁금해서 비교해보았다.
결국 SaveAll 함수 내부 로직을 보면
@Transactional @Override public <S extends T> List<S> saveAll(Iterable<S> entities) { Assert.notNull(entities, "Entities must not be null"); List<S> result = new ArrayList<>(); for (S entity : entities) { result.add(save(entity)); } return result; } |
이와 같다.
save를 for 문으로 묶었을 뿐이다.
추가의 성능 기대는 따로 안하는게 좋을것 같다.
상황에 따라서 필요한 쿼리 메서드를 적절히 사용하면 될듯 하다.
반응형