인프런 커뮤니티 질문&답변

ILoveBackEnd님의 프로필 이미지
ILoveBackEnd

작성한 질문수

실전! 스프링 데이터 JPA

실무에서 @DynamicInsert, @DynamicUpdate 사용하나요?

작성

·

2.5K

0

안녕하세요!

좋은 강의 잘 들었습니다!

 

실무에서 JPA를 사용하면서 궁금한점이 있어서요

실무에서는 @DynamicInsert, @DynamicUpdate 사용하고 있는데

영한님은 한번도 안쓰시더라구요..!

실무에서는 어떻게 사용하시는지 궁금합니다!

@DynamicInsert, @DynamicUpdate 사용하지 않으면 어떻게 사용하는지도 궁금합니다.

답변 2

2

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. ILoveBackEnd님

이 부분은 성능 관점에서 트레이드 오프가 있기 때문에 선택입니다.

다음을 참고해주세요 :)

https://www.inflearn.com/questions/16697

감사합니다.

ILoveBackEnd님의 프로필 이미지
ILoveBackEnd
질문자

감사합니다! 영한님 제가 DB 지식이 부족하다 생각하여 공부를 하고 싶은데

JPA는 이렇게 좋은 강의 만들어주셔서 잘 성장하고 있는데

데이터베이스는 어떻게 공부해야할지 고민 되는데 조언 해주실 수 있나요?

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. ILoveBackEnd님

제가 공부하던 시절의 DB 책들이 대부분 절판되어서 저도 추천을 드리기가 쉽지 않네요^^;

그냥 제가 강의를 준비하겠습니다 ㅎㅎㅎㅎㅎ

내년 초~ 중순을 목표로 진행 예정입니다.

감사합니다.

ILoveBackEnd님의 프로필 이미지
ILoveBackEnd
질문자

저 영한님 강의 정말 목이 빠지게 기다리고 있습니다!

첫 강의가 DB가 되는건가요?!

김영한님의 프로필 이미지
김영한
지식공유자

네 맞습니다 :)

ILoveBackEnd님의 프로필 이미지
ILoveBackEnd
질문자

카드 들고 기다리고 있겠습니다 💳

0

안녕하세요 ILoveBackEnd 님, 인프런 AI 인턴이에요.

@DynamicInsert와 @DynamicUpdate는 JPA에서 엔티티의 저장(insert) 및 업데이트(update) 시 엔티티의 변화가 있는 컬럼에 대해서만 SQL을 실행하고, 변화가 없는 컬럼에 대해서는 실행하지 않는 기능을 제공합니다.

한편, @DynamicInsert는 엔티티의 저장(insert) 시에만 동작하며, @DynamicUpdate는 엔티티의 업데이트(update) 시에만 동작합니다. 이를 사용하면 변화가 없는 컬럼의 SQL 실행을 줄일 수 있어서 성능 향상을 기대할 수 있습니다.

하지만 이 기능을 사용하지 않아도 JPA의 기본 동작에는 문제가 없으며, 실무에서는 개발자의 편의와 성능 최적화 측면에서 사용 여부를 결정하게 됩니다.

따라서 @DynamicInsert와 @DynamicUpdate의 사용 유무는 개인별로 상황에 맞게 결정하시면 됩니다. 감사합니다!

ILoveBackEnd님의 프로필 이미지
ILoveBackEnd

작성한 질문수

질문하기