Jsp跟Servlet中实现页面跳转的几种方式

Jsp和Servlet中实现页面跳转的几种方式

Jsp中有7种跳转方式,分别为:

1、使用RequestDispatcher.forward方法转发
<%
   RequestDispatcher rd = getServletContext().getRequestDispatcher("/test/test.jsp");
   rd.forward(request, response);
%>

 

2、response.sendRedirect 重定向
<%
   response.sendRedirect("test.jsp");
%>

 

3、使用forward标签

<jsp:forward page="test2.jsp"/>

 

4、html标记中的meta标记

<meta http-equiv="refresh" content="0; url=test.jsp">

 

5、使用response.setHeader
<%
  int stayTime=0;
  String URL="test.jsp";
  String content=stayTime+";URL="+URL;
  response.setHeader("REFRESH",content);
%>

 

6、使用response.setHeader和response.setStatus 发送重定向请求
 <%
  response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY);
  String newLocation = "test.jsp";
  response.setHeader("Location",newLocation);
 %>

 

7、使用javascript脚本
<script type="text/javascript">
  window.location.href="test.jsp";
</script>

 

Servlet中有2中跳转方式,分别为:

1、forward 转发
  ServletContext sc = getServletContext();
  RequestDispatcher rd = sc.getRequestDispatcher("/test/test.jsp"); //定向的页面
  rd.forward(request, response);


2、sendRedirect 重定向
  response.sendRedirect("test/test.jsp");