1. <jsp:param> 액션 태그 제약

- <jsp:include>, <jsp:forward> 액션태그를 이용해서 파라미터를 추가로 전달 할 때 String 타입의 값만 전달할 수 있는 제약이 있다.

- 데이터를 문자열로 변환해줘야하고 반대로 문자열을 알맞은 타입으로 변환해주는 기능도 추가로 구현해야 한다.


2. request 기본 객체의 속성을 이용해서 값 전달

- 전달할 데이터가 String 타입이 아니라면 기본 객체의 속성을 이용해서 값을 전달한다.

- 포함하거나 이동할 페이지는 동일한 요청(REQUEST 범위)을 갖기 때문에 속성을 이용한다.

- 한번의 요청에 대해서 유효하게 동작하며 모든 JSP에서 공유된다.

- MVC 패턴 웹 어플리케이션을 구현할 때 필수이다.


<!--makeTime.jsp  -->

<%@page import="java.util.Calendar"%>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
	<%
		Calendar c = Calendar.getInstance();
		request.setAttribute("time", c);
	%>
	<jsp:forward page="viewTime.jsp"/>


<!-- viewTime.jsp -->

<%@page import="java.util.Calendar"%>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Time</title>
</head>
<body>
	<%
		Calendar c = (Calendar) request.getAttribute("time");
	%>

	현재 시간은 <%=c.get(Calendar.HOUR)%><%=c.get(Calendar.MINUTE)%><%=c.get(Calendar.SECOND)%>
</body>
</html>


+ Recent posts