[JSP] 4.1 JSP(Java Server Pages)의 처리 과정

2022. 4. 7. 15:47JAVA/Servlet&JSP

학습목표
1. JSP 소스 코드가 어떤 과정을 거쳐서 웹 브라우저의 서비스 요청에 응답을 하는지 학습

 

1. JSP의 처리 과정

JSP의 처리 과정

웹 컨테이너는 JSP 페이지에 대한 요청이 들어올 경우 다음과 같은 처리를 한다.

  • JSP에 해당하는 서블릿이 존재하지 않을 경우 JSP 페이지를 컴파일하여 서블릿을 생성한 후, 생성된 서블릿을 사용하여 클라이언트의 요청을 처리한다.
  • JSP에 해당하는 서블릿이 존재하는 경우, 곧바로 서블릿을 사용하여 클라이언트의 요청을 처리한다.

위와 같이 JSP 페이지를 요청할 때에는 JSP를 직접적으로 실행하는 것이 아니라, JSP를 자바 소스 코드로 변환한 후 컴파일해서 생성된 서블릿을 실행하는 것이다. 여기서 JSP 페이지를 자바 코드로 변경하는 단계를 변환 단계라고 하며, 자바 코드를 서블릿 클래스로 변경하는 단계를 컴파일 단계라고 한다.

 

JSP 페이지에서 자바 소스 코드로 변환하면 다음과 같이 변환됩니다.

위 그림은 자바 소스 코드로 변환하기전 jsp 파일 내용입니다. 그리고 JSP 페이지로부터 자바 소스코드로 변환하면 다음과 같이 java 파일로 변환됩니다. 다음 그림은 변환된 index_jsp.java 파일의 일부입니다.

위 내용을 보면 jsp 페이지의 익숙한 페이지 내용이 out.write() 메서드로 감싸서 변환된 것을 볼 수 있습니다. 이 java 파일을 컴파일해서 서블릿 클래스로 만들어서 웹 브라우저에게 전달하는 것입니다.

 

References

source code : https://github.com/yonghwankim-dev/JSP2.0
JSP 2.0 프로그래밍 기초부터 중급까지

 

'JAVA > Servlet&JSP' 카테고리의 다른 글

[JSP] 4.3 어플리케이션의 폴더 구조  (0) 2022.04.07
[JSP] 4.2 출력 버퍼  (0) 2022.04.07
[JSP] 2.6 JSP 기본 객체 : response  (0) 2022.04.07
[JSP] 2.5 JSP 기본 객체 : request  (0) 2022.04.07
[JSP] 2.4 스크립트 요소  (0) 2022.04.07