response.sendRedirect(url) 로 페이지 전환은 가능했으나.. 클라이언트의 요청은 전달되지 않음.
하지만. jsp:forward 는, 클라이언트의 요청을 전달 할 수 있음.
1. <jsp:forward page = " url " />
2. <% String whereTo = "/templates/"+"url" %>
<jsp:forward page = '<%= whereTo %>' /> 즉, 경로를 변수에 담아서, 지정할 수도있음
forward 하면서, 파라미터도 넘길 수 있는데.
1. <jsp:forward page = "<%= towhere %>" >
<jsp:param name= "lang" value = "korea" />
</jsp:forward> 이처럼 해서넘길수 잇음
1. jsp forward 의 전형적인 사용방법
페이지 주소도 바뀌지 않고, 내용만 바뀌는, 출력버퍼를 이용한 아주 좋은 페이지 분기 방법이다.
<%
String forwardPage = null;
// 조건에 따라 분기 지정
if( 조건 1 ){
forwardPage= 페이지 url
}else if( 조건 2 ) ............
<jsp:forward page = " <%= forwardPage %> " />
<jsp:include page="url" flush="true" />
페이지를 포함 시키는 것이당.
포함 할때 jsp:param 태그를 이용해서 파라미터를 추가할 수 있다.
인클루드 태그는, 레이아웃의 한 구서요소를 모듈화 하기 위해 사용됨.
<%@ include file="파일명" %> // 인클루드 디렉티브
인클루드 디렉티브를 사용해서 포함하는 파일의 경우는 일반 jsp 파일과 구분하기 위해서 jspf 라는 확장자를 주로 사용함.
JSP Fragment 즉, 소스코드 조각을 의미함
모든 JSP 페이지에 사용되는 변수 지정 또는 모든 페이지의 중복문장을 주로 만들어서 사용함
코드 조각 자동 포함 기능 !
jsp 2.0 이후부터는 web.xml 파일에 설정 정보를 줌으로써 코드 중복을 방지하며 코드조각을 사용할 수잇음
<jsp-config>
<jsp-property-group> // JSP 의 프로퍼티를 지정함을 나타냄
<url-pattern> /view/* </url-pattern> // 프로퍼티를 적용할 JSP파일에 해당하는 URL 패턴을 지정한다
<include-prelude>/common/variable.jspf</include-prelude> // url-pattern 패턴에 해당되는 jsp파일의 앞부분에추가
<include-coda>/common/footer.jspf</include-coda> // url-pattern 패턴에 해당되는 jsp파일의 뒷부분에 추가
</jsp-property-group>
</jsp-config>
즉 /view/ 폴더안에 잇는 jsp 파일은 앞과 뒤에 저것들이 추가된다.
또는 모든 페이지에 카피라이터 라던가, footer 를 추가할 경우 그리구 한개 이상의 그룹 태그를 이용할 경우
<jsp-config>
<jsp-property-group> // JSP 의 프로퍼티를 지정함을 나타냄
<url-pattern> /view/* </url-pattern> // 프로퍼티를 적용할 JSP파일에 해당하는 URL 패턴을 지정한다
<include-prelude>/common/variable.jspf</include-prelude> // url-pattern 패턴에 해당되는 jsp파일의 앞부분에추가
<include-coda>/common/footer.jspf</include-coda> // url-pattern 패턴에 해당되는 jsp파일의 뒷부분에 추가
</jsp-property-group>
<jsp-property-group> // JSP 의 프로퍼티를 지정함을 나타냄
<url-pattern> *.jsp </url-pattern> // 프로퍼티를 적용할 JSP파일에 해당하는 URL 패턴을 지정한다
<include-coda>/common/footer.jspf</include-coda> // url-pattern 패턴에 해당되는 jsp파일의 뒷부분에 추가
</jsp-property-group>
</jsp-config>
인클루드 액션 태그와 디렉티브의 차이는
액션태그는 요청 시간에 처리하고, 디렉티브는 JSP 를 자바소스로 변환할때 처리 된다.
액션태그는 별도의 파일로 요청 처리 흐름을 이동 시키지만, 디렉티브는 추가 시켜버림
데이터 전달방법은, 액션태그는 request 기본 객체나 jsp:param 을 이용하고, 디렉티브는 변수에 값 저장 시킴
액션태그는 레이아웃을 모듈화 할때 쓰고, 디렉티브는, 공통사용되는 변수나 이벤트, 저작권 같은 문장들
'JAVA > JSP & Servlet' 카테고리의 다른 글
에러 페이지 다루기 ! (0) | 2013.03.06 |
---|---|
기본 객체의 속성을 이용하여 값 전달하기. (0) | 2013.03.05 |
JSP : plugin 태그 (0) | 2013.03.05 |
jsp : setProperty 태그 , getProperty 태그 (0) | 2013.03.05 |
JSP 액션 태그 사용법 ! (0) | 2013.03.05 |