2021. 6. 9. 19:21, Back-End/JSP
1. <jsp.include> 액션 태그
jsp.include는 화면 구성 요소의 코드 중복 문제를 없앨 때 사용할 수 있는 것이
바로 <jsp.include> 액션 태그이다.
- main.jsp가 웹 브라우저의 요청을 받는다.
- [출력 내용A]를 출력 버퍼에 저장한다.
- <jsp.include>가 실행되면 요청 흐름을 sub.jsp로 이동한다.
- [출력 내용B]를 출력 버퍼에 저장한다.
- sub.jsp의 실행이 끝나면 요청 흐름이 다시 main.jsp의 <jsp.include>로 돌아온다.
- <jsp.include> 이후 부분인 [출력 내용C]를 출력 버퍼에 저장한다.
- 출력 버퍼의 내용을 응답 데이터를 전송한다.
<jsp.include page = "포함할페이지" flush = "true" />
page : 포함할 페이지 경로를 지정
flush : true면 출력 버퍼를 플러시, false는 반대
// info.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<html>
<head>
<title>INFO</title>
</head>
<body>
<table width =100% border = 1 cellpadding=0 cellspacing=0>
<tr>
<td> 제품번호</td> <td>XXXX</td>
</tr>
<tr>
<td> 가격</td> <td>10,000원</td>
</tr>
</table>
<jsp:include page="infoSub.jsp" flush ="false">
<jsp:param value="A" name="type"/> <!--info.jsp에 이름이 타입이고 값이 A인 파라미터를 추가로 전달한다. -->
</jsp:include>
</body>
</html>
//infoSub.jsp
<%@ contentType="text/html; charset=UTF-8"%>
<%
String type = request.getParameter("type"); // info.jsp에서 전달한 type 파라미터의 값을 읽어온다
if(type == null) { // type 파라미터가 null이면 반환한다.
return;
}
%>
<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>
<jsp:param>액션 태그는 <jsp:include> 액션 태그의 자식 태그로 추가한다.
<jsp:param> 의 name 속성과 value 속성은 각각 포함할 페이지에 새로 추가할 파라미터의 이름과 값을 입력한다.
비교항목 | <jsp:include> | include 디렉티브 |
처리 시간 | 요청 시간에 처리 | JSP 파일을 자바 소스로 변환할 때 처리 |
기능 | 별도의 파일로 요청 처리 흐름을 이동 | 현재 파일에 삽입시킴 |
데이터 전달 방법 | request 기본 객체나 <jsp:pram>을 이용 | 페이지 내의 변수를 선언한 후, 변수에 값 저장 |
용도 | 화면의 레이아웃의 일부분을 모듈화할 때 주로 사용한다. | 다수의 JSP 페이지에서 공통으로 사용되는 변수를 지정하는 코드나 저작권과 같은 문장을 포함한다. |
<jsp:forward> 액션 태그는 하나의 JSP 페이지에서 다른 JSP 페이지로 요청 처리를 전달할때 사용
- 웹 브라우저 요청을 from.jsp에 전달한다.
- from.jsp는 <jsp:forward> 액션 태그를 실행한다.
- <jsp:forward> 액션 태그를 실행하면 요청 흐름이 to.jsp로 이동한다.
- 요청 흐름이 이동할 때 from.jsp에서 사용한 request 기본 객체와 response 기본 객체가 to.jsp로 전달
- to.jsp가 응답 결과를 생성한다.
- to.jsp가 생성한 결과가 웹 브라우저에 전달된다.
<jsp:forward page = "이동할 페이지" />
'Back-End > JSP' 카테고리의 다른 글
[JSP] 6. 쿠키와 세션 (1) | 2021.06.12 |
---|---|
[JSP] 5. 자바빈과 <jsp:useBean> 액션 태그 (0) | 2021.06.09 |
[JSP] 3. 에러처리 (0) | 2021.06.06 |
[JSP] 2. 버퍼와 기본객체 (0) | 2021.06.05 |
[JSP] 1. 기본 코드 구조와 request,response 처리 (0) | 2021.06.05 |
Comments, Trackbacks