Web

JSP, Servelt, MVC

kakaroo 2022. 2. 1. 10:44
반응형

MVC diagram
Ref:  https://www.youtube.com/watch?v=D6EIkCNEPSQ

Servlet ? 웹 클라이언트의 요청을 처리할 수 있는 클래스, 웹페이지를 동적으로 생성하기 위해 서버측 프로그램

자바 서블릿 ? 자바를 사용하여 웹페이지를 동적으로 생성하는 서버측 프로그램 혹은 그 사양

 

JSP ? (Java Server Pages)

HTML 코드에 JAVA 코드를 넣어 동적웹페이지를 생성하는 웹어플리케이션 도구이다.

JSP 가 실행되면 자바 서블릿(Servlet) 으로 변환되며 웹 어플리케이션 서버에서 동작되면서 필요한 기능을 수행하고

그렇게 생성된 데이터를 웹페이지와 함께 클라이언트로 응답한다.

 

JSP파일을 생성해서 실행하면 JSP translator(ex.Tomcat)을 통해 서블릿을 상속받는 자바코드로 변환

--> JSP HTML 문법과 유사

    JSP 파일 -> Servlet으로 동작

ex)URL jsp이 포함되어 있었음

  --> MVC 패턴 적용 이전 구현 방식 : JSP 파일로 처리하는 방식 (MVC패턴은 Servlet이 처리함)

 

HTML/CSS/JS : 정적

JSP : 동적

 

기존 방식 - 클라이언트의 요청을 JSP 파일로 받음

서블릿방식 - 클라이언트의 요청을 Servlet으로 직접 받음

   직접 응답, redirect 응답, forward(jsp선택) - jsp처리(값 세팅) - 응답

 

MVC패턴 :  웹 어플리케이션을 만들때 아래와 같이 분류

          UI로부터 비즈니스 로직을 분리할 수 있다(= 결합도를 낮춤)

           Model - 애플리케이션의 정보(데이터)를 나타냄 (ex. 함수개념(Method), Controller가 호출함,

                   비지니스 로직처리(필요한 경우 외부자원(DB)사용)

           View - 사용자에게 보이는 UI, JSP파일

           Controller - Servlet (Client요청을 처리 : 데이터와 비즈니스 로직사이의 상호동작을 관리)

                        비지니스 로직처리(모델 사용)

 

MVC 패턴
MVC 패턴

 

Front Controller와 Handler 관계
Front Controller와 Handler 관계

반응형

'Web' 카테고리의 다른 글

Filter / Cookie / Session (공사중..)  (0) 2022.02.01
JSP - URL mapping  (0) 2022.02.01
JSP와 Servlet 값 주고 받기 (GET/POST)  (0) 2022.02.01
Eclipse Dynamic Web Project - 02  (0) 2022.02.01
Eclipse Dynamic Web Project - 01  (0) 2022.02.01