ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [TIL] - 230918 mvc + service 구조
    TIL 2023. 9. 20. 08:38
    반응형

    # 부스트캠프 멤버십 8기

     

    📌Facts

    MVC 구조- Model- Controller- Service- DAO- VO

     


    📚 Findings

    MVC 패턴?

    MVC 패턴은 Model, View, Controller 3가지로 역할을 나누어 개발하는 방법론이다.

    이렇게 역할을 나눠서 개발하면 유지보수, 확장이 용이해지고 코드 중복을 줄일 수 있다.

     

    Model에서는 데이터를 다룬다.

    View는 사용자에게 보여지는 UI 부분이다.

    Controller는 model과 view 사이 중간 로직을 담당한다.

     

    Service는 정보를 가공하는 과정이다.

     

    1. Client가 Request를 보낸다.(Ajax, Axios, fetch등..)

    2. Request URL에 알맞은 Controller가 수신 받는다. (@Controller , @RestController)

    3. Controller 는 넘어온 요청을 처리하기 위해 Service 를 호출한다.

    4. Service는 알맞은 정보를 가공하여 Controller에게 데이터를 넘긴다.

    5. Controller 는 Service 의 결과물을 Client 에게 전달해준다.

     

    DAO는 DB 서버에 접근하여 SQL 문을 실행할 수 있는 객체이다. 단순하게 페이지를 불러오는 프로젝트에서 Service와 DAO의 차이는 미미하다.

     


    😁 Feelings

    MVC 구조를 사용하다가 controller 함수가 너무 무거워져서 model 쪽으로 로직을 옮겨야하나 고민하다가 Service 디렉토리를 통해 문제를 해결할 수 있었다. 이번 프로젝트는 쿼리가 복잡하지 않아 DAO를 도입하지 않았지만 다음에는 DAO까지 분리를 해봐야겠다.

     


    🧭 Future

    내일은 RESTful API에 대해서 알아볼 것이다.

    반응형
Designed by Tistory.