include 디렉티브

dongeranguk·2021년 12월 9일
0
post-thumbnail

include 디렉티브의 사용 방법은 다음과 같다.

<%@ include file="포함할 파일" %>

여기서 file 속성은 include 디렉티브를 사용하여 포함할 파일의 경로를 나타낸다.

1. <jsp:include>와의 차이점

<jsp:include>와 마찬가지로 지정한 페이지를 현재 위치에 포함시켜 주는 기능을 제공한다. 하지만, <jsp:include>는 다른 JSP로 흐름을 이동시켜 그 결과물을 현재 위치에 포함시키는 방식인 반면,
include 디렉티브는 다른 파일의 내용을 현재 위치에 삽인한 후에 JSP 파일을 자바 파일로 변환하고 컴파일 하는 방식이다.

1.1. 예제

위와 같이 include 디렉티브는 코드 차원에서 삽입이 이루어지기 때문에, 삽입이 되는 파일(include.jspf)에서 선언한 변수(velog)를 삽입하는 JSP(includer.jsp)에서 사용할 수 있게 되는것이다.


2. include 디렉티브의 활용

include 디렉티브는 코드 차원에서 포함되기 때문에 <jsp:include> 액션 태그와는 달리 다른 용도로 사용될 수 있다. include 디렉티브는 다음과 같이 두 가지 형태로 주로 사용된다.

  • 모든 JSP 페이지에서 사용되는 변수 지정
  • 저작권 표시와 같은 간단하면서도 모든 페이지에서 중복되는 문장
<%
    String memberID = (String)session.getAttribute("MEMBERID");
    File tempFolder = (File)application.getAttribute("TEMPFOLDER"):
    
%>
...
<%= memberID %>
...
<%
	fw = new FileWriter(tempFolder, "name.tmp");
    ...
%>

include 디렉티브를 사용하면 편리하게 공용 변수를 선언할 수 있다.


3. 코드 조각 자동 포함 기능

JSP 2.0 버전부터 include 디렉티브를 사용하지 않고도 JSP의 앞뒤에 지정한 파일을 삽입하는 기능을 제공하고 있다.

다수의 JSP 페이지에서 같은 파일을 include 디렉티브를 사용해서 삽입할 경우 여러 JSP에서 중복된 코드를 작성해야 한다. 따라서, web.xml 파일에 다음과 같은 설정 정보를 추가함으로써 코드의 중복을 방지할 수 있다.

<jsp-config>
	<jsp-property-group>
    	<url-pattern>/view/*</url-pattern>
        <include-prelude>/common/examplc.jspf</include-prelude>
        <include-coda>/common/footer.jspf</include-coda>
    </jsp-property-group>
</jsp-config>

각 태그는 다음과 같다.

  • jsp-property-group : JSP의 프로퍼티를 지정함을 나타낸다.
  • url-pattern : 프로퍼티를 적용할 JSP 파일에 해당하는 URL 패턴을 지정한다.
  • include-prelude : url-pattern 태그에서 지정한 패턴에 해당되는 JSP 파일의 앞에 자동으로 삽입될 파일을 지정한다.
  • include-coda : url-pattern 태그에서 지정한 패턴에 해당되는 JSP 파일의 뒤에 자동으로 삽입될 파일을 지정한다.

또한 한개 이상의 태그를 이용해서 자동으로 삽입될 파일을 지정한 경우에는 입력한 순서대로 적용된다.


<jsp:include> 액션 태그와 include 디렉티브의 비교

0개의 댓글