✅ 순수 서블릿 개발
-> 뷰 화면(HTML)을 서블릿(자바 클래스) 안에서 개발하다 보니, HTML을 만드는 작업이 자바 코드에
섞여서 지저분하고 복잡하다는 단점이 생겨서 템플릿 엔진 중 하나인 JSP
가 생김
✅ JSP
JSP를 사용하면서 따로 JSP파일을 만드니, JSP 파일 안에서 HTML 코드 안에 중간중간 동적으로
필요 부분만 자바 코드를 적용하니 HTML 작업은 깔끔하게 진행이 가능해졌다
하지만 이 방법도 불편하다 생각하여 결국 비즈니스 로직은 서블릿처럼 다른곳에서 처리하고
JSP는 목적에 맞게 화면을 그리는 일에 집중하기 위해 MVC 패턴
이 등장하였다
✅ MVC 패턴
MVC1 패턴 처럼 컨트롤러에서 비즈니스 로직을 처리할 수 있지만,
컨트롤러가 너무 많은 일을 담당하기 때문에서비스
계층을 별로도 만든 MVC2 패턴이 등장함
컨트롤러는 비즈니스 로직이 있는 서비스를 호출하는 것을 담당한다.
✅ MVC 적용
컨트롤러
로 사용뷰
로 사용모델
로 사용--> request.setAttribute()
request.getAttribute()
로 데이터를 보관 조회 함
forward
ex) 조회 및 검색 때 사용
String viewPath = "/WEB-INF/views/new-form.jsp";
RequestDispatcher dispatcher = request.getRequestDispatcher(viewPath); // jsp로 이동할 경로 찾기
dispatcher.forward(request,response);// 서블릿에서 jsp 호출
// 다른 서블릿이나 JSP로 이동할 수 있는 기능 (서버 내부에서 다시 호출이 발생)
redirect
두개 비교 사이트 : https://doublesprogramming.tistory.com/63