jsp和servlet中實現頁面跳轉的方式執行個體總結_JSP編程

來源:互聯網
上載者:User

本文執行個體總結了jsp和servlet中實現頁面跳轉的方式。分享給大家供大家參考,具體如下:

假設要求從test1.jsp 跳轉到test2.jsp

一. jsp中跳轉:

1. 使用RequestDispatcher.forward方法轉寄

<% RequestDispatcher rd = getServletContext().getRequestDispatcher("/test/test2.jsp");  rd.forward(request, response); %>

2. response.sendRedirect 重新導向

<%  response.sendRedirect("test2.jsp");%>

3.  使用forward標籤

複製代碼 代碼如下:
<jsp:forward page="test2.jsp"/>

4. html標記中的meta標記

複製代碼 代碼如下:
<meta http-equiv="refresh" content="0; url=test2.jsp">

5. 使用response.setHeader

<%int stayTime=0;String URL="test2.jsp";String content=stayTime+";URL="+URL; response.setHeader("REFRESH",content);%>

6. 使用response.setHeader和response.setStatus 發送重新導向請求

<% response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY);  String newLocation = "test2.jsp";  response.setHeader("Location",newLocation); %>

7. 使用javascript指令碼

<script type="text/javascript">window.location.href="test2.jsp";</script>

二. servlet中跳轉:

假設 從 servlet中跳轉到test2.jsp

1. forward

ServletContext sc = getServletContext(); RequestDispatcher rd = sc.getRequestDispatcher("/test/test2.jsp"); //定向的頁面 rd.forward(request, response);public class ForwardServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response)  throws ServletException, IOException { String id = request.getParameter("id"); response.setContentType("text/html; charset=gb2312");  ServletContext sc = getServletContext();  RequestDispatcher rd = sc.getRequestDispatcher("/test/test2.jsp"); //定向的頁面  rd.forward(request, response);  } public void doPost(HttpServletRequest request, HttpServletResponse response)  throws ServletException, IOException { doGet(request, response); }}

2. sendRedirect

package com.yanek.test;import java.io.IOException;import javax.servlet.RequestDispatcher;import javax.servlet.ServletContext;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class RedirectServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response)  throws ServletException, IOException { String id = request.getParameter("id"); response.setContentType("text/html; charset=gb2312");  response.sendRedirect("test/test2.jsp"); } public void doPost(HttpServletRequest request, HttpServletResponse response)  throws ServletException, IOException { doGet(request, response); }}

希望本文所述對大家JSP程式設計有所協助。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.