JSP 처리과정

By | 2009년 1월 6일

앞서 웹서버가 웹프로그래밍을 어떻게 처리하는가에 대해 살펴 보았다. JSP 역시 웹프로그램이므로 브라우저의 요청이 발생하면 Tomcat과 같은 JSP 컨테이너에 의해 자바 소스코드인 서블릿 코드로 변환된 후 자바 컴파일러를 통해 컴파일 과정을 거쳐 클래스 파일이 생성되면 해당 클래스 파일을 실행하여 브라우저 요청에 응답한다. 만약 이미 요청한 JSP 페이지와 관련된 클래스 파일이 있으면 서블릿 파일로의 변환과정을 거치지 않고 바로 해당 클래스 파일을 실행하여 브라우저 요청을 처리한다. 아래 순서도는 브라우저 요청에 따른 JSP 실행 단계를 나타낸 것이다.

JSP 실행 단계

JSP 실행 단계


위 순서도를 살펴보면 JSP는 서블릿 코드 생성 단계(translation phase), 컴파일 단계(compile phase), 요청 처리 단계(request processing phase)와 같이 크게 세 단계를 거쳐 실행됨을 알 수 있다.

서블릿 코드 생성 단계에서는 브라우저에서 요청이 발생하면 JSP 컨테이너는 해당 JSP의 클래스파일을 찾는데 만약 해당 클래스 파일을 찾을 수 없는 경우 JSP 페이지가 서블릿 프로그램 코드로 변환된다. 서블릿 프로그램 코드는 자바 소스 코드 형태로 한번 서블릿 코드가 생성되면 해당 JSP 페이지의 내용이 변경될 때까지 이 과정은 수행되지 않는다. 이는 JSP 컨테이너가 자동으로 변경 여부를 판단 처리해 준다.

컴파일 단계에서는 생성된 자바 소스 코드 형태인 서블릿 코드를 실행 가능한 자바 프로그램인 클래스 파일로 변환해 준다.  컴파일 시 JSP 컨테이너는 컴퓨터에 설치된 JDK를 이용하여 컴파일 과정을 실행한다.

요청 처리 단계에서는 브라우저의 요청이 발생하면 컴파일 단계에서 만들어진 서블릿 클래스를 이용 요청을 처리한다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.