개발일지(일간)

23년 02월 03일

move2 2023. 2. 5. 22:33

@DynamicInsert와 @DynamicUpdate에 대해서 배웠다.

두 어노테이션 모두 쿼리를 날릴때 null인 값은 제외하고 쿼리문이 만들어진다.

예를 들어 빌더타입인 User를 작성한다고 할때, User.builder().username("이름").build()를 한다면, @DynamicInsert나 @DynamicUpdate를 선언하지 않았을때의 쿼리는 id,username과 선언해주지 않아 null값인 password까지 가진 쿼리가 나가지만 @DynamicInsert나 @DynamicUpdate를 적용한다면 id,username에 대한 쿼리만 나간다.

당연히 속도에서 차이가 나게 된다.

null값이 들어가지 않아도 될 경우에는 선언해주는 것이 좋을 것 같다.