티스토리 뷰

Java/Jsp

jsp include 방식 차이

싸드 2014. 3. 27. 17:24

원본 ==> http://blog.naver.com/ceresrits/40043798219

디렉티브 include<%@inlcude file=URL %>와<jsp:include page=URL flush="false"/>액션태그
와 <jsp:include>액션태그는 모두 다른 페이지를 현재페이지에 포함시키는 기능을 가지고있다. include디렉티브는 단순하게 소스의 내용이 텍스트로 포함되어 컴파일된다. 즉 a.jsp에b.jsp파일을 디렉티브 include할경우 b.jsp파일의 소스는 a.jsp안에 복사되어 컴파일되는것이다.

 



 

include 디렉티브의 처리과정은 정적이라고 할수있다. include디렉티브 의 사용법은 다음과 같다.


<%@ include file="포함할 파일의 경로“%>


include 디렉티브를 통해 페이지를 포함할때 주위 할점은 비록포함되는 페이지라하더라도 포함되는 페이지의 한글을 제대로 처리하기 위해서는 1라인의<%@ page contentType="text/html; charset=euc-kr"%>을 생략해서는 않된다. include 디렉티브는 주로 조각코드를 삽입할때 사용된다.

다음으로 <jsp:include>액션태그에대해알아보자. incldue 디렉티브는 단순하게 페이지의 내용이 텍스트로 포함되지만 <jsp:include>액션태그는 페이지의 처리결과를 포함한다는 점에서 include디렉티브와 차이점을 보인다. 즉 a.jsp파일에서 b.jsp 파일은 <jsp:include>를 이용해 execute했을경우 그 소스가 복사되는것이 아니라 프로그램의 실행 제어가 넘어갔다가 다시 돌아오게 되는것이다.  그림을 보자

 

 



 

위의 그림에서보듯이 브라우져가 a.jsp에 요청을 하고 a.jsp페이지를 처리하는 도중 <jsp:include page="b.jsp"/>를 만나면 프로그램 실행 제어가 b.jsp로 넘어가서 b.jsp를 처리하게 된다. 그리고 b.jsp의 실행이 끝나면 다시 a.jsp로 제어가 복귀해서 남은 코드를 실행한다. 그리고 그결과를 마지막으로 클라이언트(브라우져)로 보내주게 되는것이다. 액션태그의 사용법을 보자


<jsp:include page="포함할 페이지 경로“ flush="false"></jsp:include>


flush의 속성값은 false로 지정하는것이 일반적이다. true로 지정하면 일단 먼저 버퍼의 내용을 클라이언트에 전송하게 되는데 이때 헤더정보도 같이 전송하기때문에 추후 헤더정보의 추가가 되지않는다. false로 해서 실행이 다 끝난후 출력하도록 하자


<jsp:include>액션태그에서 포함되는 페이지로 값전달하기

<jsp:include>액션태그에서 포함되는 페이지로 값을 전달할수있는데

방법은 <jsp:include>........</jsp:include>

태그안에 <jsp:param>액션태그를 이용해서 값을 전달할수있다. 그사용법을 보면


<jsp:include page="b.jsp" flush="false">

        <jsp:param name="param" value="value1"/>

</jsp:include>


이런식으로 <jsp:param>액션 태그를 이용해서 값을 전달해줄수있다. 이값을 b.jsp에서 받을려면

request.getParameter(name)을 이용하면 되겠다.

'Java > Jsp' 카테고리의 다른 글

사업자 외국인 주민번호 체크 자바스크립트  (0) 2015.07.28
GET방식과 POST방식의 차이  (0) 2015.07.28
HTML 에러 코드  (0) 2015.07.27
Jsp 달력 만들기  (0) 2012.07.20
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함