3.2 페이지 이동
3.2.1 sendredirect
-주소변경O, 값 전송X
-웹 페이지를 다른 위치로 이동시킨 다음 사용자들을 다른 페이지로 유도할 때 다른 웹 서버에 있는 웹 자원도 호출가능
-텍스트 자료만 전달
-한글을 전달하려면 URL인코딩해야함.
3.2.2 forword
-클라이언트로부터의 요청과 응답정보를 매개변수로 모든 제어를 넘김
-주소변경X, 값 전송O
-다른 페이지에 이동하면서 현재 페이지 정보/제어권 모두 보냄(현재 페이지에서 할일을 다 하고 난 후 호출할 경우에 유용)
-같은 웹서버, 같은 웹 애플리케이션내에 웹 자원만 호출
-객체형태 모든 데이터를 전달
3.2.3 include
-클라이언트로부터 요청과 응답정보를 넘겨 실행한 결과를 포함.(실행후 다시 돌아온다)
***실습12 import java.io.IOException;
import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;
@WebServlet("/Dispatcher") public class DispatcherServlet extends HttpServlet { private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { RequestDispatcher dispatcher= request.getRequestDispatcher("dispatcher.jsp"); request.setAttribute("requestName", "dispatcher요청합니다.."); dispatcher.forward(request, response); }
//http://localhost:8090/Web01/Dispatcher 가 됨 --> forward 방식
}
<%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <!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=EUC-KR"> <title>Insert title here</title> </head> <body>
request속성값 : <%= request.getAttribute("requestName") %> </body> </html>
|
***실습13 import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;
@WebServlet("/Redirect") public class RedirectServlet extends HttpServlet { private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setAttribute("request", "Redirect로 보낸 자료"); //response.sendRedirect("redirect.jsp"); response.sendRedirect("redirect.jsp?name='hong'");
}
/* * http://localhost:8090/Web01/redirect.jsp 가 됨 * 값이 안오는.. */ } <%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <!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=EUC-KR"> <title>Insert title here</title> </head> <body>
<!-- request속성값 : --><%-- <%= request.getAttribute("request") %> --%> request속성값 : <%= request.getParameter("name") %> </body> </html>
|
'Web > JSP/Servlet/JDBC' 카테고리의 다른 글
웹컨테이너 내장객체/ 내장객체란? (0) | 2016.06.22 |
---|---|
JSP지시어란?/include/taglib/예제 (0) | 2016.06.22 |
서블릿에서의 Session/ Session 이란 / Session 개념 / Session 예제 (0) | 2016.06.22 |
GET/POST 방식, GET/POST 예제, GET/POST example (0) | 2016.06.22 |
JSP란 / JSP 예제 / JSP example (1) | 2016.06.22 |