작성
·
211
0
서비스랑, 레포지토리랑
메소드 이름을 일치하게는 하면 안되나요 ?
ex) 회원가입 서비스, 레포지토리 메소드 : join(..)
답변 1
0
안녕하세요. H K님, 공식 서포터즈 David입니다.
1. 나중에 spring data jpa를 사용하게 되면 기본적으로 제공해주는 메서드들이 있습니다. findById() 같은 경우 기본적으로 제공해주는 메서드에 속합니다.
2. repository 내 findById 메서드가 있다면 id로 엔티티를 찾아오는 곳에서는 모두 findById를 사용할 수 있습니다. 그러나 id를 조건으로 엔티티 하나를 찾아오는 메서드명을 findById 대신 join으로 나타내게 된다면 MemberService 내 join 메서드 안에서는 맥락에 맞는 메서드명이지만 다른 곳에서는 join(회원가입)이라는 이름이 맥락상 맞지 않습니다. 굳이 사용하려면 할 수 있지만 인지부조화는 덤으로 따라올 것입니다.
3. 2번과 같은 이유로 service의 메서드명들은 비즈니스로직을 잘 타나내는 (repository보다 추상화된) 이름으로 메서드명을 사용하게 됩니다.
감사합니다.