1. 웹 브라우저 요청 (클라이언트가 웹 브라우저로 JSP에 대한 요청 정보를 전달)
kalsWeb.jsp 라는 페이지를 클라이언트가 웹 브라우저 주소창에 입력하고 이동을 합니다.
2. JSP -> Servlet (컨테이너가 JSP 파일을 servlet 파일(.java)로 변환)
servlet 파일로 변환된다는 것은 kalsWeb_jsp.java 파일이 생성된다는 것과 같은 말이자 생성되는 시점입니다.
3. Servlet -> JSP (.class 파일 생성)
바로 전 단계에서 생성된 servlet 파일(.java)를 컴파일하여 실행가능한 byte code로 변환한 .class 파일을 생성합니다.
4. 내부 로직 수행
바로 전 단계에서 변환되고 생성된 .class 파일을 로딩하고 인스턴스를 생성합니다.
5. 웹 브라우저 응답
서블릿이 실행되어 요청을 처리하고 받아낸 응답 정보를 생성해줍니다.
이렇게 1~5단계가 정상적으로 수행되어 우리는 JSP 파일에 JAVA 코드를 사용할 수 있습니다.
내부 로직이 수행되었기 때문에 소스보기를 하여도 직접 작성한 JSP 또는 JAVA 코드를 클라이언트가 볼 수 없습니다.
위 이미지는 1~5단계를 표현한 순서도입니다.
이해가 조금 더 쉬울 듯!
동작 단계를 통하여 생성된 .java 파일과 .class 파일의 경로도 알아두는 것이 좋습니다.
워크스페이스 경로/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/work/Catalina/localhost/프로젝트명/org/apache/jsp/
만약 jsp 파일명이 kalsWeb.jsp 라면,
생성된 java 파일명은 kalsWeb_jsp.java 이고,
생성된 class 파일명은 kalsWeb_jsp.class 입니다.
JSP에 대한 정의는 https://kalsweb.tistory.com/15 링크에서 간단히 설명해드렸고,
추후 이용되는 MVC 패턴에서 서블릿은 Controller 역할을 하게됩니다.
'BackEnd > JSP' 카테고리의 다른 글
커넥션 풀(DBCP) 이용하여 DB 연동하기 (MySQL) (0) | 2020.05.05 |
---|---|
서블릿의 생명주기 (LifeCycle) (0) | 2020.05.05 |
MySQL 설치하기 (0) | 2020.03.20 |
JSP 개발 환경 구축하기 (처음하기 4편) (0) | 2020.01.23 |
JSP 개발 환경 구축하기 (처음하기 3편) (0) | 2020.01.23 |