본문 바로가기

개발/JSP

페이지 모듈화와 요청 흐름 제어

01. <jsp:include> 액션 태그를 이용한 페이지 모듈화


<jsp:include> 액션 태그의 동작 방식

1.1 <jsp:include> 액션 태그 사용법

<jsp:include page="포함할페이지" flush="true" />

flush : 지정한 JSP 페이지를 실행하기 전에 출력 버퍼를 플러시 할자의 여부를 지정한다. true 이면 출력 버퍼를 플러시하고, false이면 하지 않는다.

출력 버퍼 플러싱의 의미
<jsp:include> 액션 태그의 flush 속성의 값이 true 이면 출력 버퍼를 플러시 하는데, 이는 출력 버퍼의 내용이 웹 브라우저에 전달된다는 것을 뜻한다. 출력 버퍼의 내용이 웹 브라우저에 전달되면 HTTP 헤더 정보도 함께 전달되기 때문에 이후로는 헤더 정보를 추가해도 반영되지 않게 된다. 예를 들어 위의 그림에서 sub.jsp로 이동할 때 출력 버퍼의 내용을 플러시하게 되면 sub.jsp에서는 response.setHeader()와 같은 메서드를 실행해도 헤더가 추가되지 않게 된다.

main.jsp
<%@ page contentType="text/html; charset=utf-8" %>
<%@ page pageEncoding="euc-kr" %>
<%@ page trimDirectiveWhitespaces="true" %>
<html>
<head><title>main</title></head>
<body>
main.jsp에서 생성한 내용.
<jsp:include page="sub.jsp" flush="false" />
include 이후의 내용
</body>
</html>

sub.jsp
<%@ page contentType="text/html; charset=utf-8" %>
<%@ page pageEncoding="euc-kr" %>
<%@ page trimDirectiveWhitespaces="true" %>
<p>
sub.jsp에서 생성한 내용.
</p>

main.jsp의 실행 결과



'개발 > JSP' 카테고리의 다른 글

데이터 베이스 프로그래밍 기초  (1) 2011.10.19
클라이언트와의 대화 1: 쿠기  (0) 2011.10.14
기본 객체와 영역  (0) 2011.10.12
JSP로 시작하는 웹 프로그래밍  (0) 2011.10.11
웹 어플리케이션 개발 시작하기  (0) 2011.10.07