만족

[JSP] 포워드(Forward)와 리디렉션(Redirection) 본문

[JSP] 포워드(Forward)와 리디렉션(Redirection)

Backend/JSP Satisfaction 2018. 1. 3. 21:24

[포워드(Forward)]


지정한 정보를 가지고 다른 페이지로 이동한다.


ex)


<jsp:forward page="targetPage.jsp">

<jsp:param name="param1" value="value1"/>

<jsp:param name="param2" value="value2"/>

</jsp:forward>


다음의 코드로 param1과 param2를 가지고 targetPage.jsp로 이동한다.


targetPage.jsp에서는 


Sended Param1: <%= request.getParameter("param1") %>

<br/>

Sended Param2: <%= request.getParameter("param2") %>

<br/>


처럼 parameter로 전달했던 정보를 얻어올 수 있다


<jsp:param name...>을 사용하지 않으면 매개변수 없이도 페이지를 이동할 수 있다.


포워드의 경우에는 서버 내부에서 페이지를 이동하기 때문에, 실제로는 targetPage.jsp로 이동했더라도


클라이언트 측 URL은 변하지 않는다.


[리디렉션(Redirection)]


포워드와 마찬가지로 페이지를 이동한다.


단, 이동할 때 매개값을 전달하여 이동하고 싶을 경우에는, URL에 데이터를 실어서 전달한다.


URL에 데이터가 노출되기 때문에, 보안 문제가 있을 수 있다.


<%

response.sendRedirect("targetPage.jsp");

%>


매개값을 전달하려면, .jsp뒤에 ?name1=value1&name2=value2처럼 전달한다.


<%

response.sendRedirect("targetPage.jsp?name1=value&name2=value2");

%>


리디렉션은 포워딩과는 다르게 클라이언트 측에서 페이지를 이동한다.


따라서 클라이언트가 2회 이동하게 되고, URL에 변경된 페이지명이 표시된다.






'Backend > JSP' 카테고리의 다른 글

[JSP] 빈(Bean)  (0) 2018.01.05
[JSP] PreparedStatement  (0) 2018.01.03
[JSP] 데이터베이스 연동  (0) 2018.01.03
[JSP] 쿠키(Cookie)  (0) 2018.01.02
[JSP] 기초 간단정리  (0) 2018.01.02


Comments