
JPA 의 변경감지는 기본적으로 개별 엔티티에 대해 건 단위로 발생한다.
그런데 개발을 하다보면 하나의 쿼리로 여러 데이터를 변경해야 하거나, 삭제해야 하는 경우가 있을 수 있다.
이때는 보통 다음과 같이 벌크 연산을 사용해서 처리한다.
벌크 연산

username 을 "비회원" 으로 수정한다.set(member.age, member.age.add(1))set(member.age, member.age.add(-1))set(member.age, member.age.multiply(2))
SQL function 호출하기
SQL의 함수를 사용할 때에는 Expressions 라는 것을 사용한다.
username 에서 member 라는 단어를 M 으로 바꿔서 조회
Expressions 의 stringTemplate() 메서드를 사용해서 DB의 함수를 사용하겠다는 것을 명시하고, 원하는 함수를 사용하면 된다.Dialect 에 등록된 function 만 호출할 수 있다.강의를 듣고 정리한 글입니다. 코드와 그림 등의 출처는 김영한 강사님께 있습니다.