Spring ‐ 서블릿, JSP, MVC 패턴 - dnwls16071/Backend_Study_TIL GitHub Wiki
📚 서블릿
- 서블릿의 단점 : 코드의 비효율성(자바 코드와 HTML 코드가 혼재해 구분이 명확하지 않다.)
- 템플릿 엔진의 도입 : JSP, Thymeleaf 등으로 대체
📚 JSP(대신 Thymeleaf)
- JSP의 단점 : 서블릿과 마찬가지로 비즈니스 로직과 HTML 코드가 혼재해 구분이 명확하지 않다.
- MVC 패턴의 도입
📚 MVC(Model - View - Controller) 패턴
- MVC(Model - View - Controller)
- Controller : HTTP 요청을 받아서 파라미터를 검증하고 비즈니스 로직을 실행한다.
- Model : 뷰에 출력할 데이터를 담아둔다.
- View : 모델에 담긴 데이터를 사용해서 화면을 그리는 일에 집중한다.(HTML 생성)
❓redirect vs forward
- redirect는 실제 클라이언트에 응답이 나갔다가 클라이언트가 redirect 경로로 다시 요청한다.
- 따라서 클라이언트가 인지할 수 있고, URL 경로도 실제로 변경된다.
- 반면에 포워드는 서버 내부에서 일어나는 호출이기 때문에 클라이언트가 전혀 인식하지 못한다.