Controller, Service, Respository에 대해 이해하려면

선행적으로 Spring MVC의 동작 구조에 대해서 이해해야 한다.

 

Spring MVC 기본로직

  • DispatcherServlet : 프론트의 컨트롤러를 담당하는 부분이다. 간단히 정의해보자면, 우리가 앞으로 각각 분리해서 만들 Model, View, Controller를 조합하여 브라우저로 출력해주는 역할을 수행한다.
  • HandlerMapping : 클라이언트의 요청을 바탕으로 어느 Controller를 실행할지 결정한다.
  • Model : 어플리케이션이 무엇을 할 지 정의한다. 내부 비지니스 로직을 하기 위한 역할을 한다.
  • ViewResolver : 실행할 View를 찾는 역할을 한다.
  • View : 유저가 보는 화면을 보여주게 하는 역할이다. 데이터를 받고 그리는 역할을 한다.
  • Controller : 단순히 이야기하면 Model과 View를 이어주는 다리 (Routing) 이다. Model이 데이터를 어떻게 처리해야 할지 알려주는 역할을 한다. 클라이언트의 요청을 받으면 해당 요청에 대한 실제 업무를 수행하는 Model을 호출한다. 클라이언트가 보낸 데이터가 있다면, 모델을 호출할 때 전달하기 쉽게 적절히 가공한다. Model이 업무 수행을 완료하면 그 결과를 가지고 화면을 생성하도록 View에 전달한다.
  • 비지니스 로직 (Service) : Controller에서 넘어온 정보를 가공하여 Controller에게 넘겨준다. 핵심 비지니스 로직 구현

 

Repository란 ? 

데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리

+ Recent posts