[Spring]@Repository 기능
Spring에서 데이터 엑세스 클래스에 주로 사용하는 @Repository의 2가지 기능에 대해 알아보자.
- 컴포넌트 스캔의 대상이 된다.(Bean 등록)
- 예외 변환 AOP의 적용 대상이 된다.
JPA의 EntityManager를 이용하여 DB 엑세스 시 예외가 발생하면 JPA에서 정의한 예외(PersistenceException)가 발생한다. 하지만 @Repository가 적용되면, 이를 Spring의 DataAccessException으로 자동으로 변환시켜 준다. 이는 PersistenceExceptionTranslater라는 JPA 예외 변환기가 수행한다.
최신 댓글