-
page에 파라미터 전달하는 방법프로그램/JSP 2007. 11. 15. 11:46
①<jsp:forward page="/xx/yy/zz.jsp">
<jsp:param name="x1" value="<%= x1 value %>" />
</jsp:forward>
②<%
ClassName x1 value = ClassName.Method();
request.setAttribute("x1",x1 value);
%><jsp:forward page="xx/yy/zz.jsp" />
③<%
response.sendRedirect("/zz.jsp?name=%3F%3F
%>
④
<script language="Javascript">
location.href="<%=request.getContextPath() %>/receiveParam.jsp"+
"num=<%=URLEncoder.encode(numberString) %>
</script>
==============================================================
①paramFrom.jsp
---------------------------------------------------------------
<%@ page contentType = "text/html; charset=euc-kr" %>
<%
String value = request.getParameter("p1");
if (value == null) value = "NOPARAM";
%>
<jsp:forward page="/chap07/param/paramTo.jsp">
<jsp:param name="p1" value="<%= value %>" />
</jsp:forward>
---------------------------------------------------------------
p1이란 값을 paramTo.jsp 페이지에 전달
paramTo.jsp
---------------------------------------------------------------
<%@ page contentType = "text/html;charset=euc-kr" %>
<html>
<head><title>paramTo</title></head>
<body>p1 파라미터 : <%= request.getParameter("p1") %>
</body>
</html>
---------------------------------------------------------------
파라미터를 받는 페이지
get 방식과 post 방식과 동일하게 request 객체에서 value 값을 받아옴.
②chap07/from/makeTime.jsp
--------------------------------------------------------------
<%@ page contentType="text/html;charset=euc-kr" %>
<%@ page import="java.util.Calendar" %>
<%
Calendar cal = Calendar.getInstance();
request.setAttribute("time",cal);
%>
<jsp:forward page="/chap07/from/viewTime.jsp" />
--------------------------------------------------------------
이것 역시 request 기본 객체에 time이라는 속성을 저장한 후
viewTime.jsp라는 페이지로 이동한 후 time에 저장되어있는 Calendar를 읽어
현재 시간을 출력한다.
chap07/from/viewjsp
--------------------------------------------------------------
<%@ page contentType="text/html;charset=euc-kr" %>
<%@ page import = "java.util.Calendar" %>
<html>
<head><title>현재시간</title></head>
<body>
<%
Calendar cal = (Calendar)request.getAttribute("time");
%>
현재 시간은 <%= cal.get(Calendar.HOUR) %>시 <%= cal.get(Calendar.MINUTE) %> 분 <%= cal.get(Calendar.SECOND) %> 초 입니다.
</body>
</html>
---------------------------------------------------------------
③ chap02/redirectEncodingTest.jsp
---------------------------------------------------------------
<%@ page import = "java.net.URLEncoder" %>
<%
String value = "자바";
String encodedValue = URLEncoder.encode(value);
response.sendRedirect("/index.jsp?name=" + encodedValue);
%>
---------------------------------------------------------------
chap07/sendParam1.jsp
---------------------------------------------------------------
<%@ page contentType = "text/html; charset=euc-kr" %>
<%@ page import = "java.net.URLEncoder" %>
<%@ page import = "java.util.Random" %>
<%
Random random = new Random();
int number = random.nextInt();
String numberString = Integer.toString(number);
response.sendRedirect(
request.getContextPath()+"/chap07/receiveParam.jsp?num=" +
URLEncoder.encode(numberString));
%>
--------------------------------------------------------------
④ 자바스크립트 방식의 경우
chap07/sendParam2.jsp
--------------------------------------------------------------
<%@ page contentType = "text/html; charset=euc-kr" %>
<%@ page import = "java.net.URLEncoder" %>
<%@ page import = "java.util.Random" %>
<%
Random random = new Random();
int number = random.nextInt();
String numberString = Integer.toString(number);
%>
<script language="JavaScript">
location.href = "<%= request.getContextPath() %>/receiveParam.jsp"+
"?num=<%= URLEncoder.encode(numberString) %>";
</script>
--------------------------------------------------------------
③④ 번 받는 파일(Get 방식)
chap07/receiveParam.jsp
-------------------------------------------------------------
<%@ page contentType = "text/html; charset=euc-kr" %>
<html>
<head><title>제목</title></head>
<body>전달받은 임의의 정수: <%= request.getParameter("num") %>
</body>
</html>
--------------------------------------------------------------
get 방식은 보안에 취약하고 문자 제한이 있는게 단점이다.'프로그램 > JSP' 카테고리의 다른 글
Tomcat ContextRoot (0) 2007.11.16 jspf란 (1) 2007.11.15 <jsp:include> 액션 태그 처리 순서 (0) 2007.11.15 에러 처리 페이지 (0) 2007.11.15 절대경로 / 상대경로(Tomcat 페이지 처리시 경로) (0) 2007.11.14 application 객체 (0) 2007.11.13 pageContext 객체와 메소드 (0) 2007.11.13