sitelink1 | http://blog.naver.com/coolten/140058974501 |
---|---|
sitelink2 | |
sitelink3 | |
sitelink4 | |
sitelink5 | |
sitelink6 |
jsp:include - 페이지를 삽입하는 것이다.
웹페이지에서 잘 변하지 않는 부분(공통된 부분)이 있고 늘 변하는 부분이 있다.
공통된 부분을 따로 만들어서 템플릿(Template)화 시키면 작업을 간편화 시킬 수 있다.
작업을 효율적으로 하기 위해서 공통적인 부분은 따로 파일화를 시킨다.
그리고 하나의 공통된 부분의 파일을 만들어서 공유하면 된다.
레이아웃 템플릿 - 레이아웃(layout)용도의 템플릿파일 간단하게 레이아웃이라고도 부른다.
top.jsp, left.jsp, bottom.jsp, ....(상단, 좌측메뉴, 하단)
- jsp:include를 사용해서 다른 페이지에 삽입할수 있다.
<jsp:include page ~~~ > -->페이지를 한 줄로 요약할수 있다.
이걸 쓰지 않으면 페이지마다 코드를 꽉 채워서 구현해야 한다.
<jsp:include page= '<%= ~~ %>' ~~~ >
익스프레션을 써서 자주 변하는 페이지를 변수화 시켜서 집어 넣는다면 수고를 덜수 있다.
자주 바뀌는 페이지에 대한 부분을 익스프레션으로 만들어서 페이지를 작성할수 있다.
컨텐트는 자주 변하니까 경로와 파일명을 변수화 시켜서(jsp:include사용) 넘기면 간편하게 제어할수 있다.
템플릿을 쓸때는 경로명에 유의해서 써야 한다.
jsp:include를 쓸때 CVS에 유의해서 경로설정시 신경을 써야 한다.
출력버퍼에서 웹브라우져로 뿌려주는 것 (버퍼를 비워줘서 어딘가로 보낸다.)
(그 어딘가는 웹브라우져다.)
JSP 레이아웃 템플릿 예제
(템플릿 : 무엇인가를 만들 때 안내역할을 하는데 사용되는 형식(꼴), 틀 또는 모형 )
점프할때 페이지 자체를 인자로 보낸다. 그 페이지를 컨텐트로 삼는다.
----------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------
include 지시자
jsp:include 액션태그처럼 페이지를 삽입하는 기능이 있다.
'JSP파람' 같은 부수적인 파라미터태그가 없다. 인자를 보내고 싶으면 그 파일에 포함시키고 있어야 한다. 기본적으로 동작원리가 다르다.
include지시자동작원리
- 삽입을 할때 자바코드로 변환하고 서블릿으로 컴파일해서 그때 차이점이 있다.
- 변환할때 처리하기 때문에 약간 늦어질수 있다.
차이점
대부분은 jsp:include를 쓴다.
include디렉트브 사용
- 광역변수(session의 경우 로그아웃 할 경우 사라지지만 광역변수는 사라져서는 안된다.)
- 하단부 같은 경우 카피라이터가 나오는 부분 하단부에는 include디렉티브를 쓴다.
- 굳이 써야 할 일이 있다면 공통변수를 컴파일해서 처리해야 할 때 include디렉티브를 쓴다.
곧바로 반영할수 없는 이유 - jsp:include와는 달리 요청시간에 처리해 주지 않기 때문이다.
set header로 헤더 정보를 변경할경우 그것이 바로 반영되지 않을 수 있다.