最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

servlet重定向詳解(八)

 更新時間:2021年09月23日 14:42:41   作者:柳暗花明睡一覺  
這篇文章主要為大家詳細(xì)介紹了servlet重定向的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了servlet重定向的具體內(nèi)容,供大家參考,具體內(nèi)容如下

1.重定向是什么?

這里說的重定向是由http協(xié)議規(guī)定的一種機(jī)制。其工作流程如下所述。

(1)客戶端發(fā)起http請求,訪問服務(wù)器端組件。

(2)服務(wù)器端返回一個狀態(tài)代碼為302的響應(yīng)結(jié)果。該代碼的意思是讓瀏覽器再訪問另一個組件,響應(yīng)結(jié)果中包含著訪問新組件的url地址。新的訪問組件可能在同一個應(yīng)用中也可能不在同一個應(yīng)用中。

(3)當(dāng)瀏覽器接受到這種結(jié)果,會自動訪問新的url.

(4)瀏覽器端接受新的url返回結(jié)果。

2.實(shí)現(xiàn)

重定向通過Servlet API 中HttpServletReponse接口提供的 sendRedirect(String location)方法完成。

3.重定向特點(diǎn)

3.1 servlet源組件的響應(yīng)結(jié)果不會返回到客戶端。

3.2  servlet源組件和目標(biāo)組件不會共享同一個ServletRequest對象。

3.3 如果源組件在進(jìn)行重定向前提前提交響應(yīng)結(jié)果,會報異常。

3.4 重定向的地址不必是同一個服務(wù)器的應(yīng)用。

4.案例

Check1Servlet 第一次請求的類

package com.learn;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;

/**
 * Created by Administrator on 2017/09/28.
 */
public class Check1Servlet extends HttpServlet {

 @Override
 protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

  String userName = req.getParameter("name");
  String message = "";

  if(userName == null){
   message = "please input your name";
  } else {
   message = userName;
  }
  req.setAttribute("mess",message);

  PrintWriter out = resp.getWriter();
  out.print("before redirect ");
  System.out.println("before redirect");

  resp.sendRedirect("out1?mess="+message);
  out.print("after redirect");
  System.out.println("after redirect");

  out.close();
 }
}

Out1Servlet 重定向的類

package com.learn;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;

/**
 * Created by Administrator on 2017/09/28.
 */
public class Out1Servlet extends HttpServlet {

 @Override
 protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

  String mess = (String) req.getAttribute("mess");
  System.out.println("請求范圍內(nèi)的數(shù)據(jù):"+mess);

  mess = req.getParameter("mess");
  System.out.println("請求參數(shù)中的:"+mess);

  PrintWriter out = resp.getWriter();
  out.write(mess);
  out.close();



 }
}

控制臺輸出結(jié)果:

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • java語言中封裝類代碼示例

    java語言中封裝類代碼示例

    這篇文章主要介紹了java語言中封裝類,涉及相關(guān)代碼示例及結(jié)果分析,以及封裝的好處簡單介紹,具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01
  • SpringBoot多數(shù)據(jù)源配置的全過程記錄

    SpringBoot多數(shù)據(jù)源配置的全過程記錄

    在用SpringBoot開發(fā)項(xiàng)目時,隨著業(yè)務(wù)量的擴(kuò)大,我們通常會進(jìn)行數(shù)據(jù)庫拆分或是引入其他數(shù)據(jù)庫,從而我們需要配置多個數(shù)據(jù)源,下面這篇文章主要給大家介紹了關(guān)于SpringBoot多數(shù)據(jù)源配置的相關(guān)資料,需要的朋友可以參考下
    2021-11-11
  • SpringBoot配置文件高級用法實(shí)戰(zhàn)分享

    SpringBoot配置文件高級用法實(shí)戰(zhàn)分享

    Spring Boot配置文件的優(yōu)先級是一個重要的概念,它決定了當(dāng)存在多個配置文件時,哪個配置文件中的配置將被優(yōu)先采用,本文給大家介紹了SpringBoot配置文件高級用法實(shí)戰(zhàn),文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-08-08
  • Maven工程打包jar的多種方式

    Maven工程打包jar的多種方式

    Maven打包一般可以生成兩種包一種是可以直接運(yùn)行的包,一種是依賴包(只是編譯包),這篇文章主要介紹了Maven工程打包jar的多種方式步驟詳解,需要的朋友可以參考下
    2023-04-04
  • SpringBoot使用TraceId進(jìn)行日志鏈路追蹤的實(shí)現(xiàn)步驟

    SpringBoot使用TraceId進(jìn)行日志鏈路追蹤的實(shí)現(xiàn)步驟

    有時候一個業(yè)務(wù)調(diào)用鏈場景,很長,調(diào)了各種各樣的方法,看日志的時候,各個接口的日志穿插,確實(shí)讓人頭大,所以為了解決這個問題,本文給大家介紹了SpringBoot使用TraceId進(jìn)行日志鏈路追蹤的實(shí)現(xiàn)步驟,需要的朋友可以參考下
    2024-11-11
  • 解決SpringMvc中普通類注入Service為null的問題

    解決SpringMvc中普通類注入Service為null的問題

    這篇文章主要介紹了解決SpringMvc中普通類注入Service為null的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • SpringBoot集成支付寶沙箱支付的實(shí)現(xiàn)示例

    SpringBoot集成支付寶沙箱支付的實(shí)現(xiàn)示例

    本文主要介紹了SpringBoot集成支付寶沙箱支付的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • java中hashCode方法與equals方法的用法總結(jié)

    java中hashCode方法與equals方法的用法總結(jié)

    總的來說,Java中的集合(Collection)有兩類,一類是List,再有一類是Set。前者集合內(nèi)的元素是有序的,元素可以重復(fù);后者元素?zé)o序,但元素不可重復(fù)
    2013-10-10
  • 利用ClasserLoader實(shí)現(xiàn)jar包加載并調(diào)用里面的方法

    利用ClasserLoader實(shí)現(xiàn)jar包加載并調(diào)用里面的方法

    classloader即是類加載,虛擬機(jī)把描述類的數(shù)據(jù)從class字節(jié)碼文件加載到內(nèi)存,并對數(shù)據(jù)進(jìn)行檢驗(yàn)、轉(zhuǎn)換解析和初始化,了解java的類加載機(jī)制,可以快速解決運(yùn)行時的各種加載問題并快速定位其背后的本質(zhì)原因,本文介紹了如何利用ClasserLoader來實(shí)現(xiàn)jar包加載并調(diào)用里面的方法
    2024-09-09
  • Java圖形界面框架AWT布局管理器詳解

    Java圖形界面框架AWT布局管理器詳解

    這篇文章主要介紹了Java圖形界面框架AWT布局管理器,AWT是最早的圖形用戶界面框架之一,它為開發(fā)人員提供了一些基本的組件和工具,用于構(gòu)建窗口、按鈕、文本框、標(biāo)簽等圖形界面元素,需要的朋友可以參考下
    2025-04-04

最新評論

阜南县| 九寨沟县| 大邑县| 额济纳旗| 万安县| 高清| 宝应县| 正宁县| 五常市| 塘沽区| 南涧| 烟台市| 托克托县| 祁门县| 宝鸡市| 当涂县| 呼和浩特市| 奉化市| 吐鲁番市| 彰化县| 龙南县| 临城县| 克拉玛依市| 华阴市| 邢台县| 军事| 徐闻县| 界首市| 昌乐县| 喀什市| 古蔺县| 措勤县| 栾川县| 安岳县| 工布江达县| 谢通门县| 乌拉特后旗| 兴文县| 宁乡县| 阜康市| 长乐市|