🌿SPRING/🍀공부 [SPRING]

[SPRING] Controller, Service, Repository

디카페인라떼 2022. 8. 22. 02:29

어떤 것이든 개념을 알기 전에 왜? 부터 생각하는 것이 나중에 더 좋다는 걸 알았다.

 

<Controller>

❓Survlet 으로도 구현이 가능한데 왜 Controller를 쓸까?

=> 컨트롤러의 장점

 : API 마다 파일을 만들 필요가 없음.

 => 보통 하나의 controller 안에 모든 api를 넣지는 않고 유사한 성격의 api를 하나의 controller로 관리.

(함수 명도 마음대로 설정 가능 (클래스내 중복함수명은 불가))

 

<Service, Repository>

❓All in one Controller의 문제점?

 => 한 개의 클래스에 너무 많은 양의 코드가 존재 => 이해하기 어려움

 - 현업에서는 코드 추가 또는 변경 요청이 계속 생김.

 


1. Controller의 역할

 

 

 

  • 클라이언트의 요청을 받음
  • 요청에 대한 처리는 서비스에게 전담
  • 클라이언트에게 응답

 

 

 

 

 

 

 

 

2. Service의 역할

 

  • 사용자의 요구사항을 처리 ('비즈니스 로직') 하는 실세 중에 실세!!!
    • 현업에서는 서비스 코드가 계속 비대해짐
  • DB 정보가 필요할 때는 Repository 에게 요청

 

3.Repository의 역할

  • DB 관리 (연결, 해제, 자원 관리)
  • DB CRUD 작업 처리

 

==>

'🌿SPRING > 🍀공부 [SPRING]' 카테고리의 다른 글

[SPRING] spring framwork의 이해  (0) 2022.08.22
[SPRING] 의존성 주입 DI , IoC 컨테이너  (0) 2022.08.22
[SPRING] MVC 패턴  (0) 2022.08.18
[SPRING] JPA / ORM  (0) 2022.08.18
[Spring] week01 입문 과제  (0) 2022.08.16