TIL

스프링부트 초보의 미니 프로젝트 만들기 - MVC 모델 큰 그림으로 개념잡기

jjaeje 2022. 9. 22. 18:49

일단 이번 프로젝트를 진행하기 전 개념 정립을 한번 더 해야 함을 느꼈다.

MVC모델이 이해가 될 듯 하다가 말았던 이유는 

직장 프로젝트에 쓰인 class가 책이나 인강에서 접하는 class와 달랐기 때문이다.

또한 이해가 안가는 용어들(dto, dao, vo, controller 등)을 검색해보면

어디는 dto를 쓰고 어디는 안 쓰고,

어디는 entity를 쓰고 어디는 안썼다.

 

혼란했다...숲을 모른 채로 나무부터 봐서 그런걸까.

서둘러 큰 흐름을 이해해야 할 필요를 느꼈다.

 

MVC모델에 대해서는 찾아보면 뭐가 많이 나온다.

그 중에 가장 직관적인 도식은 아래 그림이였다.

 

 

이제 좀 개념이 잡히는 데이터의  흐름.

나만의 버전으로 텍스트로 한번 도식화 해보려 한다.

 

 

 

TIL스프링부트 초보의 미니 프로젝트 만들기 - MVC 모델 개념 정리

 

 

 

스프링 레거시를 사용하는 회사 플젝의 데이터 흐름을 A라고 하고 

스프링부트 책에서 소개하는 데이터 흐름을 B라고 했을때 

A, B를 도식화하면 아래와 같다.

 

 

근데 이거 줄바꿈하면 깨지려나 모르겠다.

 

 

 


  A             view -> controller -> service -> dao -> vo -> db -> vo -> dao -> service -> controller -> view
  B             view -> controller -> service ->     entity   ->  db ->     entity    -> service -> controller -> view

  MVC       View - Controller ------------------------------- Model ------------------------------- Controller - View


 

와~~ 숲 만들기 완성!맨 아래 MVC는 A와 B의 각 흐름에 대응하는 부분을 MVC모델의 관점으로 나눠 본 것이다.이렇게 나누었으니 각 클래스에 대한 디테일한 정보는 각각 모를 때마다 찾아보면 될 것이다.

 

 

 

오늘 배운 점.MVC 모델은 숲 부터 이해하는게 효율적이다.