重定向与页面转发
重定向與頁面轉發
- 參考網址
- 參考網址
- 轉發地址欄沒有變化;重定向地址欄有變化;
- 轉發的是同一次請求;重定向是兩次不同請求
- 轉發:以前的request中存放的變量不會失效,就像把兩個頁面拼到了一起。
重定向:以前的request中存放的變量全部失效,并進入一個新的request作用域。
demo
chongdingxiang.html
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>測試</title> <script type="text/javascript" src="js/jquery.js">></script> <script type="text/javascript" > function chongdingxiang1() {var url = "Chongdingxiang_test?name=" + $("#name").val();window.open(url); } function chongdingxiang2() {var url = "Chongdingxiang_test2?name=" + $("#name").val();window.open(url); }</script> </head> <body>請輸入姓名:<br/><input type="text" id="name" /> <input type="submit" value="提交1" onclick="chongdingxiang1()" /> <input type="submit" value="提交2" onclick="chongdingxiang2()" /> </body> </html>chongdingxiang_test.java
package servlet;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;/*** Servlet implementation class Chongdingxiang_test*/ @WebServlet("/Chongdingxiang_test") public class Chongdingxiang_test extends HttpServlet { private static final long serialVersionUID = 1L;/*** @see HttpServlet#HttpServlet()*/ public Chongdingxiang_test() {super();// TODO Auto-generated constructor stub }/*** @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)*/ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubresponse.getWriter().append("Served at: ").append(request.getContextPath());//String name=new String(request.getParameter("name").getBytes("ISO-8859-1"),"UTF-8");String name=request.getParameter("name");System.out.println(name+"_11111111");//重定向response.sendRedirect("test.html"); }/*** @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)*/ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubdoGet(request, response); }}chongdingxiang_test2.java
package servlet;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;/*** Servlet implementation class Chongdingxiang_test2*/ @WebServlet("/Chongdingxiang_test2") public class Chongdingxiang_test2 extends HttpServlet { private static final long serialVersionUID = 1L;/*** @see HttpServlet#HttpServlet()*/ public Chongdingxiang_test2() {super();// TODO Auto-generated constructor stub }/*** @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)*/ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubresponse.setContentType("text/html");response.setCharacterEncoding("UTF-8");response.getWriter().append("Served at: ").append(request.getContextPath());//String name=new String(request.getParameter("name").getBytes("ISO-8859-1"),"UTF-8");String name=request.getParameter("name");System.out.println(name+"_222222222");//頁面轉發request.getRequestDispatcher("test.html").forward(request, response);}/*** @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)*/ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubdoGet(request, response); }}轉載于:https://www.cnblogs.com/renxiuxing/p/9552433.html
總結
- 上一篇: Qt之事件处理机制
- 下一篇: Keepalived 主备配置