JSP - Action Tags(2)
18 Feb 2021 | JSPJSP - Action Tags(2)
-
include 액션태그
-
include가 위치한 곳에 지정한 페이지를 포함시킬 수 있다
-
각각의 파일들은 개별적으로 컴파일된 후 include 액션 태그에 의해 합쳐진다
-
flush 속성은 false로 많이 쓰며, 지정한 페이지 실행시 버퍼의 내용을 제거한다
-
<jsp:include file=”포함할 페이지이름” flush=”false”>
<jsp:param name=”변수명” value=”값” />
</jsp:include>
-
JSP 모듈화 예제
<!-- temp/template/template.jsp --> <%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <% // 속성을 이용한 동적처리 방법 String pageTitle = (String) request.getAttribute("PAGETITLE"); // 파라미터를 이용한 동적처리 방법 String contentPage = request.getParameter("CONTENTPAGE"); %> <!DOCTYPE html> <html> <head> <meta charset="EUC-KR"> <title><%= pageTitle %></title><!--타이틀 동적처리--> </head> <body> <table width="400" border="1" cellpadding="2" cellspacing="0"> <tr> <td colspan="2"> <jsp:include page="/temp/module/top.jsp" flush="false" /> </td> </tr> <tr> <td width="100" valign="top"> <jsp:include page="/temp/module/left.jsp" flush="false" /> </td> <td width="300" valign="top"> <!-- 내용부분 : 시작 --> <!-- 페이지의 내용부분을 동적처리--> <jsp:include page="<%=contentPage %>" flush="false" /> <!-- 내용부분 : 끝 --> </td> </tr> <tr> <td colspan="2"> <jsp:include page="/temp/module/bottom.jsp" flush="false" /> </td> </tr> </table> </body> </html>
<!-- temp/module/top.jsp --> <%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> 상단 메뉴 : <a href="#">HOME</a> <a href="#">INFO</a>
<!-- temp/module/left.jsp --> <%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> 좌측 메뉴:
<!-- temp/module/bottom.jsp --> <%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> 하단 메뉴: 소개 | 도움말 | 약관 | 사이트맵
<!-- temp/template/info_view.jsp : 내용부분 --> <%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <table width="100%" border="1" cellpadding="0" cellspacing="0"> <tr> <td>제품번호</td> <td>1234</td> </tr> <tr> <td>가격</td> <td>10,000원</td> </tr> </table> <jsp:include page="infoSub.jsp" flush="false" > <jsp:param value="A" name="type"/> </jsp:include>
<!-- temp/template/infoSub.jsp --> <%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <% String type = request.getParameter("type"); if(type != null) { %> <br> <table width="100%" border="1" cellpadding="0" cellspacing="0"> <tr> <td>타입</td> <td><b><%= type %></b></td> </tr> <tr> <td>특징</td> <td> <% if(type.equals("A")){ %> 강한 내구성 <% } else if(type.equals("B")) { %> 뛰어난 대처 능력 <% } %> </td> </tr> </table> <% } %>
<!-- temp/mainPage.jsp --> <%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <% request.setAttribute("PAGETITLE", "정보보기"); %> <jsp:forward page="/temp/template/template.jsp"> <jsp:param value="info_view.jsp" name="CONTENTPAGE"/> </jsp:forward>
- 실행화면
-
-
include 액션태그와 include 지시어의 비교
참고 자료
KG 아이티뱅크 강의 자료
처음해보는 JSP&Servlet 웹 프로그래밍