모델이 하나?
구글에 MVC라고치고 이미지탭으로 가면 죄다 그림에 모델이 하나만 있는게 수두룩하다.
이러다 보니까 신입개발자 관점에서는 아 DB에서 가져오는걸 모델이라고 하고 그 모델이 바로 화면쪽으로 넘어가는구나 라고 생각하기 쉽다.
물론 모델 하나로도 구현은 충분히 가능하다.
그러나 모델 하나로 요청, 응답, DB모델을 표현한다면 차라리 Map을 쓰는게 낫지 않을까?
모델을 만드는 이유는 그 모델을 보고도 데이터의 In/Out을 정확하게 판단하기 위함이다.
실제 관리하는 데이터와 화면의 데이터는 많이 다르다.
가령 DB에는 원재료 즉 밀가루가 저장되어야 하고 화면에는 가공된 빵이 뿌려져야 한다.
그런데 처음에 말했다 시피 구글에 치는 이미지에는 절대 그렇게 표현이 되어 있지 않다.
모델은 3개가 존재 해야해
모델은 아래 구조 처럼 3개가 존재해야 한다.
굳이 번거롭게 모델 3개나 작성해야해?
물론 그렇게 말한다면 모델을 버리고 Map을 쓰면되
하지만 우리가 모델을 쓰는 이유는 위에서도 말했다 시피 모델이 가지는 장점이 있기 때문이야
첫째, 모델을 선언하면 IDE에서 제안을 해주기 때문에 좀 더 빠른 개발이 가능하지
둘째, 모델을 보고도 In/Out을 정확하게 알 수 있어
셋째, 모델이 이미 선언되어잇기 때문에 Map과 비교해볼때 오타 같은 실수의 위험이 적어
넷째, 이미 모델을 만들면서 API 정의서가 만들어진 셈이니 따로 문서작업은 안해도 되겠지?
'프로그래밍 > Spring' 카테고리의 다른 글
Spring Test @TestPropertySource Yml이 읽히지 않는다(?) (0) | 2024.04.09 |
---|---|
스프링에서 문자(String)로된 함수 혹은 표현식 실행하기 (0) | 2019.12.05 |
스프링 컨트롤러 아닌곳에서 Session 가져오기! (0) | 2018.10.15 |
[SPRING/환경구축] Spring AOP를 이용한 Transaction(트랜잭션) 설정을 했는데도 적용되지 않는 현상. (0) | 2018.07.28 |
[SPRING/환경구축] 스프링에서 LOGBACK을 설정하는 방법을 알아보자! (0) | 2018.07.21 |