이전글
forward 액션태그 사용시 <jsp:param> 태그로 데이터 전달하기
이전글에서 보았던 forward 액션태그를 사용하여 다른 JSP 페이지로 제어 흐름을 넘길 수 있습니다. 이때 제어를 넘겨받는 JSP쪽으로 데이터를 넘겨주어 공유하고 싶은 경우가 생길 수 있는데 <jsp:param> 액션태그를 이용하면 됩니다.
사용 방법은 <jsp:forward> 태그 하위에 <jsp:param> 태그를 넣는것이며 name과 value 속성을 이용합니다. name 속성이 key가 되며, value 속성이 넘길 값이 됩니다. 넘기는 값은 String 타입을 갖습니다.
<jsp:forward page="forward 시킬 JSP 페이지">
<jsp:param name="파라미터키" value="값"/>
</jsp:forward> |
cs |
아래와 같이 표현식으로 사용하여 매번 로직에 따라 동적인 값을 넘겨줄 수 있습니다.
<%
String value = "forwarding value"; //필요에 따라 동적인 값을 할당
%>
<jsp:forward page="forwarding.jsp">
<jsp:param name="파라미터키" value="<%= value %>"/>
</jsp:forward>
|
cs |
forwarding 되는 JSP 쪽에서는 request 객체를 이용하여 값을 얻을 수 있습니다.
<%
String value1 = request.getParameter("파라미터키");
%> |
cs |
사용 예제
main.jsp에서 forwarding.jsp로 흐름을 넘기면서 파라미터 두개를 넘기는 것을 실습해보도록 하겠습니다.
main.jsp
main.jsp에서는 forward 액션태그를 통해 forwarding.jsp 페이지를 호출하며 이때 파라미터로 value1, value2 를 같이 넘깁니다. value1은 변수로 따로 선언해두고 표현식을 사용하였습니다.
<%@ page contentType="text/html; charset=utf-8"%>
<%
String value = "forwarding value";
%>
<jsp:forward page="forwarding.jsp">
<jsp:param name="value1" value="<%= value %>"/>
<jsp:param name="value2" value="22222"/>
</jsp:forward> |
cs |
forwarding.jsp
forwarding.jsp에서는 넘긴 파라미터를 request 객체를 통해 가져옵니다.
<%@ page contentType="text/html; charset=utf-8"%>
<html>
<head>
</head>
<body>
<%
String value1 = request.getParameter("value1");
String value2 = request.getParameter("value2");
%>
<h1>value1 : <%= value1 %></h1>
<h1>value2 : <%= value2 %></h1>
</body>
</html> |
cs |
실행 결과입니다. main.jsp페이지를 호출했지만 서버측에서는 forwarding.jsp 페이지의 실행 결과가 출력되었습니다. 이때 넘겨받은 두 개의 파라미터 값을 출력했습니다.
<jsp:param>의 동작방식은 <jsp:include>에서 사용했을때와 동일한데, 동작방식에 대해 더욱 자세히 알고 싶은 분은 다음의 링크를 참고하시기 바랍니다.
'Servlet&Jsp' 카테고리의 다른 글
[서블릿/JSP] 자바빈(Java Beans)의 속성을 다뤄보자. <jsp:setProperty>와 <jsp:getProperty> 액션태그 (0) | 2018.09.06 |
---|---|
[서블릿/JSP] include 또는 forward시에 request 객체를 통해 데이터 공유하기 (0) | 2018.09.03 |
[서블릿/JSP] <jsp:forward> 액션 태그 설명 및 사용 방법 (0) | 2018.09.02 |
[서블릿/JSP] <jsp:include> 액션태그와 <%@ include %> 디렉티브 차이점 (0) | 2018.08.27 |
[서블릿/JSP] web.xml 설정으로 JSP페이지(jspf 파일) include하기 (1) | 2018.08.23 |