日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Servlet的重定向和转发特点

發(fā)布時間:2023/12/3 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Servlet的重定向和转发特点 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

重定向

重定向的特點:
1.地址欄發(fā)生變化
2.重定向可以訪問其他站點(服務(wù)器)的資源
3.重定向是兩次請求,不可以使用Request對象共享數(shù)據(jù)

重定向的示例代碼:

package priv.lwx.javaex.servlet_demo.web.servlet.response;import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException;/*** 重定向演示代碼** @author liaowenxiong* @date 2022/1/10 11:01*/ @WebServlet("/response_demo01") public class ResponseDemo01 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {this.doPost(req, resp);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {// 訪問ResponseDemo01,重定向到ResponseDemo02System.out.println("訪問了ResponseDemo01");// 設(shè)置重定向的狀態(tài)碼resp.setStatus(302);// 設(shè)置響應(yīng)頭resp.setHeader("Location","/servlet_demo/response_demo02");} }

或者

package priv.lwx.javaex.servlet_demo.web.servlet.response;import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException;/*** 重定向演示代碼** @author liaowenxiong* @date 2022/1/10 11:01*/ @WebServlet("/response_demo03") public class ResponseDemo03 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {this.doPost(req, resp);}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {System.out.println("訪問了ResponseDemo03");// 訪問ResponseDemo03,重定向到ResponseDemo02resp.sendRedirect("/servlet_demo/response_demo02");} }

轉(zhuǎn)發(fā)

轉(zhuǎn)發(fā)的特點:
1.轉(zhuǎn)發(fā)地址欄路徑不變
2.轉(zhuǎn)發(fā)只能訪問當前服務(wù)器下的資源 ??同個服務(wù)器下的其它項目的資源也可以跳轉(zhuǎn)嗎?
3.轉(zhuǎn)發(fā)是一次請求,可以使用Request對象共享數(shù)據(jù)

轉(zhuǎn)發(fā)的示例代碼:

package priv.lwx.javaex.servlet_demo.web.servlet.request; /*** 請求轉(zhuǎn)發(fā)演示代碼** @author liaowenxiong* @date 2021/12/29 11:21*/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; import java.io.IOException;@WebServlet(value = "/request_demo07") public class RequestDemo07 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doPost(request, response);}@Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println("demo07被訪問了...");// 轉(zhuǎn)發(fā)到demo08資源/*RequestDispatcher dispatcher = request.getRequestDispatcher("/request-demo08");dispatcher.forward(request,response);*/// 轉(zhuǎn)發(fā)前存儲數(shù)據(jù)到request對象中request.setAttribute("msg","hello");request.getRequestDispatcher("/request-demo08").forward(request, response);} } 創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎

總結(jié)

以上是生活随笔為你收集整理的Servlet的重定向和转发特点的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。