1. MVC (디자인) 패턴
1) 모델(Model) : 일반적으로 프로젝트에서의 모델은 DAO처럼 SQL처리를 담당하는 CRUD 메서드로 구성된 자바 빈이나 자료를 보유/전송하는 DTO, VO 등의 자바빈을 말하는 것입니다.
2) 뷰(View) : 프론트 사용자들이 웹브라우저 등의 클라이언트에서 볼 수 있는 부분을 말하는 것이며, HTML/CSS/javascript (node.js 제외), 및 JSP, thymeleaf(타임리프)가 이러한 부분들에 해당됩니다. JSP로만으로도 프론트 및 백단(back-end)을 모두 구성할 수 있지만 MVC model-2 패턴 위반(안티 패턴)이기 때문에 그렇게 하지 않습니다.
3 컨트롤러(controller) : 모델을 활용하여 HTTP 제어 흐름에서 요청/응답(request/response) 처리를 전송되어 오는 인자들을 모델의 상태를 변경하는데 반영하기도 합니다. 또한 결과물이 있다면 결과 인자들을 생성하고 이를 뷰단(View)에 전송할 수 있습니다.
https://ko.wikipedia.org/wiki/%EB%AA%A8%EB%8D%B8-%EB%B7%B0-%EC%BB%A8%ED%8A%B8%EB%A1%A4%EB%9F%AC
https://m.blog.naver.com/jhc9639/220967034588
1) JSP/Servlet의 model-2 패턴 적용
2) Spring의 MVC / model-2 패턴
3) model-1과 model-2의 차이점
- model-1 : 요청/응답 처리하는 백단(back-end)을 Servlet을 사용하지 않고 JSP를 사용합니다.
- model-2 : 요청/응답 처리하는 백단(back-end)으로 보안에 위험성이 있는 JSP를 사용하지 않고 자바 코드인 Servlet을 사용합니다.
'기술면접' 카테고리의 다른 글
[기술면접준비] REST API 란? (REST, REST API, RESTful API) (0) | 2022.05.09 |
---|---|
기술면접준비(5)_ 자주 나오는 기술문제 (0) | 2021.06.23 |
기술면접준비(4)_100선-1 (0) | 2021.06.09 |
기술면접준비(2)_AOP/IOC컨테이너/DI (0) | 2021.06.07 |
기술면접준비(1)_VO/DAO/DTO/트랜잭션 (2) | 2021.06.07 |