우리 모두는 jsp에 두 가지 형태의 include가 있다는 것을 알고 있습니다.
<%@ 포함 파일=” ”%>
전자는 지시적 요소이고, 후자는 행동적 요소이다. 정확히 어디에 사용되나요? 사용 방법과 차이점은 무엇입니까? 이것은 많은 사람들이 보면 생각할 질문이 될 것입니다. 아래를 살펴보겠습니다.
일반적으로 애플리케이션에 있는 모든 페이지의 특정 부분(예: 제목, 바닥글, 탐색 모음)이 동일한 경우 include 사용을 고려할 수 있습니다. 특히 <%@ include file=""%>를 사용하는 경우와
<%@ include file=" ”%>, jsp include 지시문 요소는 지정된 페이지의 내용을 읽습니다. 그리고 이러한 콘텐츠를 원본 페이지와 통합합니다. (이 과정은 변환 단계, 즉 jsp가 서블릿으로 변환되는 단계에서 수행됩니다.
다음은 번역 단계에 대한 설명입니다. jsp 페이지는 브라우저에 그대로 전송될 수 없으며 모든 jsp 요소는 먼저 서버에서 처리되어야 한다는 것을 알고 있습니다. 이는 jsp 페이지를 서블릿으로 변환한 다음 서블릿을 실행함으로써 수행됩니다. 서버에는 jsp 페이지를 처리하기 위한 jsp 컨테이너가 필요합니다. jsp 컨테이너는 일반적으로 서블릿 형태로 구현됩니다. 이 서블릿은 jsp 페이지에 대한 모든 요청을 처리하도록 구성됩니다.
Jsp 컨테이너는 jsp 페이지를 서블릿(jsp 페이지 구현 클래스, JSP 페이지 구현 클래스라고 함)으로 변환하고 이 서블릿을 컴파일하는 역할을 담당합니다. 이 두 단계가 번역 단계를 구성합니다.
이것으로부터 우리는 알 수 있습니다: jsp 페이지는 그것을 소개하는 jsp 페이지에 include 지시문 요소에 의해 지정된 페이지의 실제 컨텐츠(즉, 코드 조각)를 추가한 후 파일로 변환됩니다. jsp 컨테이너의 서블릿. 이때 임시 클래스 파일과 java 파일이 생성되는 것을 볼 수 있습니다. 여기에 예가 있습니다.
서버는 Tomcat을 사용하며, 페이지에 소개되는 jsp 파일은 test.jsp라고 합니다. 가져온 페이지는 date.jsp라고 합니다. 이 jsp 파일은 시간과 관련된 jsp 코드를 저장하고 있으며 현재 컨텍스트 루트는 test로 설정되어 있습니다.
//======date.jsp 소스 파일======//
<%@ 페이지 언어="java" contentType="text/html;charset=gb2312"%>
<%
java.util.Date 날짜=새 java.util.Date();
문자열 날짜_cn = "";
문자열 dateStr = "";
스위치(date.getDay())
{
case 0:date_cn = "일 휴식";
사례 1:date_cn = "一";
사례 2:date_cn = "이";
사례 3:date_cn = "三";
사례 4:date_cn = "4";
사례 5:date_cn = "五";
사례 6:date_cn = "六";
}
dateStr = (1900+date.getYear()) + "연도" + (date.getMonth()+1) + "월" + date.getDate() + "일(요일) + date_cn + ")";
%>
document.write("<%=dateStr%>");
//======다음은 test.jsp 소스 파일입니다==============//
<%@ 페이지 언어=”java” contentType=”text/html;charset=gb2312”%>
<머리>