English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

JSP 구조

네트워크 서버는 JSP 페이지를 처리하기 위한 JSP 엔진, 즉 컨테이너가 필요합니다. 컨테이너는 JSP 페이지에 대한 요청을 캡처합니다. 이 튜토리얼에서는 내장된 JSP 컨테이너를 지원하는 Apache를 사용합니다. 개발.

JSP 컨테이너는 웹 서버와 협력하여 JSP의 정상적인 실행을 위한 필요한 운영 환경과 다른 서비스를 제공하고, JSP 웹 페이지에 특화된 특별 요소를 올바르게 인식할 수 있습니다.

아래 그림은 JSP 컨테이너와 JSP 파일이 웹 애플리케이션에서 위치한 곳을 보여줍니다.

JSP 처리

다음 단계는 웹 서버가 JSP를 사용하여 웹 페이지를 생성하는 방법을 설명합니다:

  • 그 외의 일반 웹 페이지와 마찬가지로, 여러분의 브라우저는 서버에게 HTTP 요청을 보냅니다.

  • 웹 서버는 이 것이 JSP 웹 페이지의 요청임을 인식하고, 이 요청을 JSP 엔진에게 전달합니다. 이는 URL을 사용하거나 .jsp 파일을 통해 완성됩니다.

  • JSP 엔진이 디스크에서 JSP 파일을 로드한 후, 그들을 Servlet로 변환합니다. 이 변환은 모든 템플릿 텍스트를 println() 문으로 변경하고 모든 JSP 요소를 Java 코드로 변환하는 것으로 간단합니다.

  • JSP 엔진은 Servlet을 실행 가능한 클래스로 컴파일하고, 원래 요청을 Servlet 엔진에 전달합니다.

  • 웹 서버의 일부 구성 요소가 Servlet 엔진을 호출하고, Servlet 클래스를 로드하고 실행합니다. 실행 중에 Servlet은 HTML 형식의 출력을 생성하고, 이를 HTTP 응답에 포함하여 웹 서버에 전달합니다.

  • 웹 서버는 정적 HTML 웹 페이지 형식으로 HTTP 응답을 브라우저로 반환합니다.

  • 결국, 웹 브라우저는 HTTP 응답에서 동적으로 생성된 HTML 웹 페이지를 처리하며, 그것은 정적 웹 페이지처럼 처리됩니다.

위에 언급된 단계는 다음 그림으로 표현할 수 있습니다:

일반적으로, JSP 엔진은 JSP 파일과对应的 Servlet이 존재하는지 확인하고, JSP 파일의 변경 날짜가 Servlet보다 빠르지 않는지 확인합니다. 만약 JSP 파일의 변경 날짜가 Servlet보다 빠르다면, 컨테이너는 JSP 파일이 변경되지 않았고 Servlet이 유효하다고 판단할 수 있습니다. 이는 PHP와 같은 다른 스크립트 언어와 비교했을 때 훨씬 효율적이고 빠르게 처리됩니다.

결론적으로, JSP 웹 페이지는 Java 프로그래밍 전문가가 되지 않고 Servlet을 다른 방식으로 작성하는 것입니다. 설명 단계를 제외하고, JSP 웹 페이지는 대체로 일반 Servlet과 같이 다뤄질 수 있습니다.