[SpringBoot]Service인터페이스/ServiceImpl클래스

·2023년 2월 22일
0

SpringBoot

목록 보기
5/5


수업시간에 배우긴 했으나 왜 이렇게 나누어주는지, 어떻게 연결이 되는지 이해가 잘 안가서 쓰는 글

🌱구글링해본 결과

  1. 객체간의 결합도를 낮추어 유연한 개발을 하기 위함
  2. 무조건 이러한 패턴을 쓰는게 좋은 것은 아님. 습관성으로 사용하는 개발자들이 많다고 함.
  3. 하나의 선언부로 다양한 구현부를 작성하는 경우에 사용하는 것이 좋다고 함(다형성)
  4. 예를 들면 비밀번호를 바꾸는 기능의 인터페이스가 있다고 할때 그 방식이 여러개여서 2개 이상의 구현부를 작성할 경우에 쓰는 것이 좋다고 함.
  5. 하지만 나는 쪼렙이기 때문에 습관성으로 쓰는 것을 선택하겠다.

🌼참고

🌱이렇게 구현한 ServiceImpl은 어떻게 연결되나..


이해하기 위해 대충 ppt로 찌끄려봤다. Client가 요청해서 DB까지 전달됐다는 가정
1. Repository인터페이스 Spring Boot에 의해 구현체 자동 생성. 혹은 @Query로 jpql 사용
2. @Autowired로 의존성 주입해서 Override된 메소드에 Repository의 crud메소드 사용.
3. ServiceImpl에서 Entity -> DTO로 변환(ModelMapper 이용)
4. Controller에 Service 의존성 주입 후 DTO로 전달
5. Client로 전달

profile
웹개발입문자

0개의 댓글