2013/09/19 - [Java/Java EE] - JSP 액션 태그 -
2013/09/19 - [Java/Java EE] - JSP 액션 태그
1. include 디렉티브(지시자)
- <jsp:include> 액션 태그와 마찬가지로 지정한 페이지를 현재 위치에 포함시켜주는 기능을 제공한다.
- <jsp:include> 와는 다르게 흐름을 이동시키는 것이 아닌 다른 파일의 내용을 현재 위치에 삽입한 후에 컴파일 처리를 한다.
2. include 디렉티브의 사용법 및 처리 방식
- <%@ include file="포함할파일" %>
- 일반 JSP 파일과 구분하기 위해서 확장자를 JSPF(JSP Fragment)를 사용한다.
- 코드 차원에서 삽입이 이루어지기 때문에 삽입되는 파일에서 선언한 변수를 삽입하는 JSP에서 사용할 수 있게 된다.
- 웹 컨테이너는 include 디렉티브를 통해서 포함된 파일이 변경될 경우 반영해준다.
<!-- includeMain2.jsp --> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>include 디렉티브 main</title> </head> <body> <% int number = 10; %> <%@ include file="/includeSub2.jspf" %> <p>공통변수 DOWNFOLDER = "<%=downloadFolder %>"</p> </body> </html> <!-- 실행결과 includeMain2.jsp 에서 지정한 번호 : 10 공통변수 DOWNFOLDER = "c:\Download" -->
<!-- includeSub2.jspf --> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <p>includeMain2.jsp 에서 지정한 번호 : <%= number %></p> <% String downloadFolder = "c:\\Download"; %>
<!-- 페이지 소스보기로 확인한 결과 -->
<!-- includeMain2.jsp --> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>include 디렉티브 main</title> </head> <body> <!-- includeSub2.jspf --> <p>includeMain2.jsp 에서 지정한 번호 : 10</p> <p>공통변수 DOWNFOLDER = "c:\Download"</p> </body> </html> <!-- 실행결과 includeMain2.jsp 에서 지정한 번호 : 10 공통변수 DOWNFOLDER = "c:\Download" -->
3. include 디렉티브 활용
- 모든 JSP 페이지에서 사용되는 변수 지정
- 간단하면서도 모든 페이지에서 중복되는 문장
- 기본 객체로부터 특정 값을 읽어와 변수에 저장한 후 그 변수를 사용하는 JSP 페이지가 많다면, 변수를 지정하는 부분을 별도의 파일에 작성한 후 include 디렉티브로 포함시킨다.
4. 코드 조각 자동 포함
- JSP 2.0 부터 include를 사용하지 않고 JSP 앞 뒤에 지정한 파일을 삽입하는 기능이 제공된다.
- web.xml 파일에 설정 정보를 추가한다.
- jsp-property-group : JSP의 프로퍼티를 지정함을 나타낸다.
- url-pattern : 프로퍼티를 적용할 JSP 파일에 해당하는 URL 패턴을 지정한다.
- include-prelude : url-pattern 태그에서 지정한 패턴에 해당되는 JSP 파일의 앞에 자동으로 삽입될 파일을 지정한다.
- include-coda : url-pattern 태그에서 지정한 패턴에 해당되는 JSP 파일의 뒤에 자동으로 삽입될 파일을 지정한다.
- 해당되는 설정이 여러가지 일 경우에는 차례대로 삽입된다.
<jsp-config> <!-- /member/ 로 시작하는 모든 JSP 파일의 앞 뒤에 각각 삽입한다. --> <jsp-property-group> <url-pattern>/member/*</url-pattern> <include-prelude>header.jspf</include-prelude> <include-coda>footer.jspf</include-coda> </jsp-property-group> <!-- 모든 JSP 파일의 앞 뒤에 각각 삽입한다. --> <jsp-property-group> <url-pattern>*.jsp</url-pattern> <include-prelude>header2.jspf</include-prelude> <include-coda>footer2.jspf</include-coda> </jsp-property-group> </jsp-config>
'Java > Java EE' 카테고리의 다른 글
JSP 액션 태그 - <jsp:forward> (0) | 2013.09.20 |
---|---|
JSP 액션 태그 <jsp:include> 와 디렉티브 include 비교 (0) | 2013.09.19 |
JSP 액션 태그 - <jsp:include> (0) | 2013.09.19 |
JSP 기본(내장) 객체의 속성(Attribute) (0) | 2013.09.19 |
JSP 기본(내장) 객체 영역과 속성 (0) | 2013.09.17 |