인프런 커뮤니티 질문&답변

Luke Lee님의 프로필 이미지
Luke Lee

작성한 질문수

[개정판 2023-11-27] Spring Boot 3.x 를 이용한 RESTful Web Services 개발

JPA Service 구현을 위한 Controller, Repository 생성

@Repository annotation 관련

작성

·

1.5K

0

제가 알기로는 "@Repository" annotation은 JPARepository를 exntended 한 인터페이스에서 사용할 필요가 없는 걸로 아는데요 (현재 spring boot 2.4를 사용하고 있는 제 업무용 프로젝트에서도 그렇게 사용하고 있고요.)

spring boot 혹은 spring data jpa 버전에 따른 차이인가요 아니면, 굳이 필요없는데 습관적으로 붙이신 걸까요?

답변 3

0

오 어노테이션 없이도 잘 실행되는군요. 

0

Luke Lee님의 프로필 이미지
Luke Lee
질문자

개인 취향이겠지만, 저는

- spring data jpa repository interface 의 경우는 @repository 없이,

- spring data jpa 없이 만든 custom repository 클래스의 경우에는 @repository annotation을 사용하는 것이 더 합리적이라고 생각합니다.

"xxxRepositry"라는 인터페이스의 네이밍만으로도 충분하다고 생각합니다.

뭐 스택오버플로우도 개인 의견이긴 하지만, 여기 설명을 지지합니다. - 댓글 대다수는 annotation 필요없다고 하네요.

https://stackoverflow.com/questions/44069367/repository-not-necessary-when-implementing-jparepository

0

Dowon Lee님의 프로필 이미지
Dowon Lee
지식공유자

안녕하세요, 이도원입니다. 

Spring Framework에서 자동으로 해당 Repository를 검색해 주기 때문에, 의무 사항은 아니지만, 학습하시면서 명시하는 것은 나쁜 습관이 아니라고 생각됩니다. 제 의견이니 참고바랍니다. 

감사합니다. 

Luke Lee님의 프로필 이미지
Luke Lee

작성한 질문수

질문하기