jsp include -- JSP, SPRING



사실은 액션태그에 대해 글을 쓰려고 하다가 참조사이트에 include 기능의 비교가 잘 되어 있어 이로 대신한다.

JSP 페이지에서 다른 페이지를 재사용(단순히 포함한다는 것을 다르게 생각하면 재사용이라 말할 수 있다. – 주) 하는 방법에는 여러 가지가 있습니다.


1) include directive


<%@ include file=“header.html” %>

정적인(static) 방법으로, 명시된 페이지를 현재 페이지에 translation time때 포함시키게 됩니다. 이는 원래 html 같은 정적인 레이아웃 템플릿 등을 포함할 때 사용하도록 만들어졌습니다.



2) standard action (액션태그)


<jsp:include page=“header.jsp” />


동적인(dynamic) 방법으로, 페이지를 request time때 현재 페이지에 포함시킵니다. JSP 같은 동적인 페이지를 포함할 때 사용되도록 만들어졌습니다.

<jsp:include page=“header.jsp” flush="false" />


flush는 true로 지정하면 일단 먼저 버퍼의 내용을 클라이언트에 전송하게 되는데 이때 헤더정보도 같이 전송하기 때문에 추후 헤더정보의 추가가 되지 않는다.  보통 false로 지정하여 실행이 다 끝난 후에 출력하도록 한다.

<jsp:include page=“header.jsp”>
    <jsp:param name="PARAM1" value="A1" />
</jsp:include>


위처럼 jsp:param을 써서 해당 페이지에 파라미터를 지정할 수 있다.


3) JSTL tag


<c:import url=“http://www.example.com/foo/bar.html”>
    <c:param name="PARAM1" value="A1" />
</c:import>


와 같이 동적으로 request time 때 페이지를 포함시킵니다. 기본적으로 위 2개의 방법과 거의 똑같이 동작하나 보다 강력하고 유연합니다. 위의 2가지 방법과는 달리 같은 도메인이 아닌 외부의 페이지도 포함시킬 수 있습니다.

참조 : http://plaboratory.org/archives/2459
참조 : http://blog.naver.com/ceresrits/40043798219


덧글

댓글 입력 영역