[삽질 피하기] @Query, @Modifying, @Transactional 어노테이션 사용법
1. @Query Spring JPA를 다루다보면 쿼리를 직접 정의하여 사용할 경우가 존재한다. 이 때 @Query 어노테이션을 이용하여 정의가 가능하다. 단, @Query 어노테이션에 정의될 필드명은 테이블이 아닌 Entity 클래스와 Entity 속성 이름이다. 파리미터의 값은 @Param 어노테이션을 통해 받아올 수 있다. 예를 들어, id가 일치하고 특정 기간('WHERE') 내에 있는 각 날짜별('GROUP BY') 데이터의 평균('AVG')을, 반환하고자 하는 객체에 매핑하여 가져오는 방법은 다음과 같다. @Query("SELECT new com.example.dto.ResponseDto(" + "AVG(test.age), AVG(test.value), test.regDate) " + "FRO..
2021.04.21