서버나 클라이언트에게 어떤 행동을 하도록 명령하는 태그로 JSP 페이지에서 페이지와 페이지 사이를 제어하거나, 다른 페이지의 실행 결과 내용을 현재 페이지에 포함하거나, 자바 빈즈 등의 기능을 제공한다.
<jsp: ... />
스크립트 태그 형식이 아닌 xml 형식이다.
<jsp:forward page="파일명"/>
혹은
<jsp:forward page="파일명"> </jsp:forward>
다른 페이지로 이동하는 태그로, 컨테이너에서 태그를 만나면 시작 전까지 출력 버퍼에 저장된 내용 삭제하고 프로그램 제어를 해당 페이지로 이동한다. (파일명 경로 주의)
처리 과정
=> 결국 클라이언트의 화면에는 hello1.jsp는 보이지 않고 hello2.jsp만 보이지만, 주소란에는 처음 요청한 hello1.jsp가 표시된다.
<jsp:include page="파일명" flush="false"/>
include 디렉티브 태그와 같은 역할을 한다. (파일명 경로 주의)
flush 속성값은 해당 파일로 이동할 때 지금까지 출력 버퍼에 저장한 결과를 처리한다. 기본값 false, true로 설정시 저장된 내용을 웹브라우저에 출력하고 버퍼를 비운다.
외부 파일을 포함한다는 점이 비슷하지만, include 액션 태그는 외부 파일이 실행된 후 현재 페이지로 제어를 반환한다.
처리 과정
=> 결국 클라이언트의 화면에는 hello2.jsp 가 포함된 hello1.jsp가 보이고 주소란에는 처음 요청한 hello1.jsp가 표시된다.
구분 | include 액션 태그 | include 디렉티브 태그 |
---|---|---|
처리 시간 | 요청 시 자원을 포함 | 번역 시 자원을 포함 |
기능 | 별도의 파일로 요청 처리 흐름을 이동 | 현재 페이지에 삽입 |
데이터 전달 방법 | request 기본 내장 객체나 param 액션 태그를 이용하여 파라미터를 전달 | 페이지 내의 변수를 선언한 후 변수에 값을 저장 |
용도 | 화면 에리아웃의 일부분을 모듈화할 때 주로 사용 | 다수의 JSP 웹 페이지에서 공통으로 사용되는 코드나 저작권과 같은 문장을 포함하는 경우에 사용 |
기타 | 동적 페이지에 사용 | 정적 페이지에 사용 |