프로젝션 : select 절에 뭘 가져올까?
한번의 여러개 담아둬서 막 꺼낼수 있는걸 Tuple이라 함.
번거롭다 jpql 을 사용하면
projects를 사용해서 dto로 변환 조회 프로퍼티 세터를 사용해서 조회하는 방식이다.
게터 세터 무시하고 필드에 바로 값이 박힘
생성자를 이용한 방법
-> complieQueryDsl
컴파일 오류로 빨리 잡을수 있음 / q파일 생성에다 MemberDto가 쿼리 디에스엘 프로젝션에 의존성을 가지게 됨.
초기값 설정 가능
함수가 많아서 코드가 길어지고 별로인거같지만
조회되는 코드만 보자면 단순하다
조합 가능
bulk 연산 주의점
member1~4 영속성 컨텍스트에 올라가 있음
username = member 1~4로
위에 쿼리문을 실행하면
영속성 컨텍스트와 상태가 안맞아 버림.
그리고 우선권은 영속성 컨텍스트가 우선을 가짐.
결과는 -> member1~4 유저네임이 계속 유지됨 .
초기화 시켜버리자
기본으로 제공되는 함수
좀더 간편하게