본문 바로가기
JSP

[JSP] forwardTag

by NamGH 2023. 9. 26.
forward : 다른 페이지로 프로그램의 제어를 이동하는 경우에 사용
               현재 클라이언트의 요청을 실행 시에 다른 자원으로 이동

 

특징

  • pageContext 내장 객체의 forward() 메소드가 태그로 구현된 기능
  • 이동되기 전의 페이지의 출력 버퍼에 있던 내용은 모두 사라짐
  • 응답이 완료되면 이전 페이지로 돌아가지 않고 모든 응답이 종료
  • 이전 페이지의 request/response 객체가 그대로 넘겨짐(sendRedirect 메소드와 다른 점)
  • 파라미터를 전달하기 위해 태그 사용 가능

 

사용형식

  • <jsp:forward page "이동될페이지명" />
  • <jsp:forward page "이동될페이지명" ><js[:forward>
  • <jsp:forward page "<%=표현식 + "jsp"%>" />
  • -[이동될페이지명]은 상대 경로/ 절대 경로/표현식 모두 가능하다

param액션 태그

  • <jsp:forward page "이동될페이지명" />
  •          <jsp:param name = "paramName1" value = "var1/>
  •          <jsp:param name = "paramName2" value = "var2/>
  • </jsp:forward?

 

예제
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
Ex01_form.jsp<br>

<form method="post" action="Ex01_via.jsp">
	이름 : <input type="text" name="name"><br><br>
	비번 : <input type="text" name="pw"><br><br>
	
	<input type="submit" value="보내기"><br><br>
</form>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
Ex01_via.jsp<br>

<%
	request.setCharacterEncoding("UTF-8");
%>

<%
	String name = request.getParameter("name");
	String pw = request.getParameter("pw");
	System.out.println("Ex01_via.jsp");
	System.out.println("name: " + name);
	System.out.println("pw: " + pw);
%>
nam : <%= name %>살 <br>
pw : <%= pw %> <br>

forward 액션태그<br>
<jsp:forward page="Ex01_result.jsp">
	<jsp:param value="30" name="age"/>
</jsp:forward>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
Ex01_result.jsp<br>

<%	
	String name = request.getParameter("name");
	String pw = request.getParameter("pw");
	String age = request.getParameter("age");
%>

name: <%= name %><br>
pw: <%= pw %><br>
age: <%= age %>살<br>

 

 

실행결과

'JSP' 카테고리의 다른 글

[JSP] JDBC을 이용하여 테이블에 데이터 관리하기  (0) 2023.10.04
[JSP] forward를 이용한 색 사진 넣기  (0) 2023.09.26
[JSP] includeActionTag  (0) 2023.09.25
[JSP] session  (0) 2023.09.25
[JSP] response  (0) 2023.09.25