2011-12-02 5 views
1

JSP를 배우고 있으며 메뉴 링크에 의해 생성 된 GET 메소드를 기반으로 서브 페이지 ("content"라는 div에 있음)를 포함하고자합니다.JSP에서 GET 매개 변수로 서브 페이지 포함하기

<div id="menu"> 
    <a href="/index.jsp?page=1">Subpage 2</a> 
</div> 
<div id="content> 

    //include somehow subpage s2.sjp 

</div> 

내가 그렇게 somethink했던 :

<% 
      int par = 0; 
      String which = "blank.jsp" ; 
      if (request.getParameter("page") != null) { 
       par = Integer.valueOf(request.getParameter("page")); 
      } 
       switch (par) { 
        case 0: 
         which = "blank.jsp"; 
         break; 
        case 1: 
         which = "s2.jsp"; 
         break; 
       } 

    %> 

하지만 난 그 JSP에서 내 문제를 해결하기위한 적절한 방법이 있는지 확실하지 않습니다.

답변

1

<jsp:include>에만 사용할 수 있습니다.

<jsp:include page="/WEB-INF/${param.page}.jsp" /> 
bar- ${param.page} 결의를하게됩니다 foo.jsp?page=bar를 호출

<jsp:include>는 효과적으로 /WEB-INF/bar.jsp 포함됩니다. 숫자에 대한 복잡한 검사가 필요 없습니다. 파일 이름을 매개 변수로 사용하십시오.

최종 사용자가 의도적으로 또는 의도하지 않게 브라우저 주소 표시 줄에서 URL을 호출하여 직접 열 수 없도록 포함 JSP가 /WEB-INF 폴더에 있습니다.

파일이없는 경우 예외가 발생하지 않도록 JSTL<c:catch>에 넣을 수 있습니다.

관련 문제