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

Java Servlet請(qǐng)求重定向的方法

 更新時(shí)間:2020年11月10日 12:01:17   作者:一點(diǎn)教程  
這篇文章主要介紹了使用Java Servlet請(qǐng)求重定向的方法,幫助大家更好的理解和學(xué)習(xí)Java Servlet的相關(guān)知識(shí),感興趣的朋友可以了解下

HttpServletResponse接口的sendRedirect()方法可用于將響應(yīng)重定向到另一個(gè)資源,它可以是Servlet,Jsp或Html文件。

它接受相對(duì)和絕對(duì)URL。

它在客戶端起作用,因?yàn)樗褂脼g覽器的網(wǎng)址欄發(fā)出另一個(gè)請(qǐng)求。因此,它可以在服務(wù)器內(nèi)部和外部工作。

1 轉(zhuǎn)發(fā)和重定向的區(qū)別

RequestDispatcher的forward()方法與HttpServletResponse接口的sendRedirect()方法之間有很多區(qū)別。具體區(qū)別如下:

forward()方法 sendRedirect()方法
forward()方法在服務(wù)器端起作用。 sendRedirect()方法在客戶端運(yùn)行。
只有1個(gè)請(qǐng)求。轉(zhuǎn)發(fā)到另一個(gè)Servlet的請(qǐng)求和原來(lái)請(qǐng)求是同一個(gè)。 每次重定向都有2個(gè)請(qǐng)求。重定向到另一個(gè)Servlet的請(qǐng)求是由瀏覽器重新發(fā)出的新請(qǐng)求。
只能轉(zhuǎn)發(fā)到當(dāng)前服務(wù)器內(nèi)部的資源。 重定向可以請(qǐng)求當(dāng)前服務(wù)器內(nèi)部的資源或者外部服務(wù)器資源。
示例:request.getRequestDispacher("servlet2").forward(request,response); 示例:response.sendRedirect(" servlet2");

2 重定向的示例

在下面示例中,我們將請(qǐng)求重定向到百度。注意sendRedirect方法在客戶端工作,這就是為什么我們可以將請(qǐng)求發(fā)送到任何地方的原因。我們可以在服務(wù)器內(nèi)外發(fā)送請(qǐng)求。

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;


public class DemoServlet extends HttpServlet{

 public void doGet(HttpServletRequest req,HttpServletResponse res)
   throws ServletException,IOException
 {
  res.setContentType("text/html;charset=utf-8");
  PrintWriter pw=res.getWriter();

  res.sendRedirect("http://www.baidu.com");

  pw.close();
 }
}

3 重定向創(chuàng)建自定義百度搜索

在下面示例中,我們使用sendRedirect方法將請(qǐng)求與請(qǐng)求數(shù)據(jù)一起發(fā)送到百度服務(wù)器。

3.1 編寫(xiě)搜索表單

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
 <meta charset="UTF-8">
 <title>一點(diǎn)教程網(wǎng)-請(qǐng)求重定向案例</title>
 <meta http-equiv="content-type" content="text/html" charset="UTF-8">
</head>
<body>
<form action="search">
 <input type="text" name="name">
 <input type="submit" value="百度搜索">
</form>
</body>
</html>

3.2 編寫(xiě)SearchServlet

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;


public class SearchServlet extends HttpServlet{

 public void doGet(HttpServletRequest req,HttpServletResponse res)
   throws ServletException,IOException
 {
  String name=req.getParameter("name");
  res.sendRedirect("https://www.baidu.com/s?wd="+name);
 }
}

3.3 配置web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
   version="3.1">

 <servlet>
  <servlet-name>SearchServlet</servlet-name>
  <servlet-class>SearchServlet</servlet-class>
 </servlet>
 <servlet-mapping>
  <servlet-name>SearchServlet</servlet-name>
  <url-pattern>/search</url-pattern>
 </servlet-mapping>
 

</web-app>

3.4 運(yùn)行測(cè)試

輸入搜索關(guān)鍵詞,點(diǎn)擊百度搜索,效果如下:

以上就是使用Java Servlet請(qǐng)求重定向的詳細(xì)內(nèi)容,更多關(guān)于Java Servlet請(qǐng)求重定向的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 一文解決springboot打包成jar文件無(wú)法正常運(yùn)行的問(wèn)題

    一文解決springboot打包成jar文件無(wú)法正常運(yùn)行的問(wèn)題

    這篇文章主要介紹了一文解決springboot打包成jar文件無(wú)法正常運(yùn)行的問(wèn)題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-07-07
  • 解析MyBatis源碼實(shí)現(xiàn)自定義持久層框架

    解析MyBatis源碼實(shí)現(xiàn)自定義持久層框架

    這篇文章主要介紹了手撕MyBatis源碼實(shí)現(xiàn)自定義持久層框架,涉及到的設(shè)計(jì)模式有Builder構(gòu)建者模式、??模式、代理模式,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-05-05
  • MyBatis分頁(yè)的四種方式

    MyBatis分頁(yè)的四種方式

    分頁(yè)查詢(xún)是非常常見(jiàn)的需求,本文主要介紹了MyBatis分頁(yè)的四種方式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-08-08
  • Java Web三層架構(gòu)的配置詳解

    Java Web三層架構(gòu)的配置詳解

    這篇文章主要介紹了Java Web三層架構(gòu)的配置方法,需要的朋友可以參考下
    2014-10-10
  • idea中寫(xiě)sql語(yǔ)句沒(méi)有提示字段的問(wèn)題

    idea中寫(xiě)sql語(yǔ)句沒(méi)有提示字段的問(wèn)題

    在IDEA中編寫(xiě)SQL時(shí)如果沒(méi)有字段提示,通常是因?yàn)闆](méi)有設(shè)置注入語(yǔ)言,解決方法是通過(guò)快捷鍵Alt+Enter選擇“注入語(yǔ)言或引用”,然后選擇相應(yīng)的數(shù)據(jù)庫(kù)(如MySQL),之后重新輸入SQL語(yǔ)句即可,此方法可以有效解決IDEA中SQL語(yǔ)句提示問(wèn)題,提高開(kāi)發(fā)效率
    2024-09-09
  • Java判斷用戶名和密碼是否符合要求過(guò)程詳解

    Java判斷用戶名和密碼是否符合要求過(guò)程詳解

    這篇文章主要介紹了Java判斷用戶名和密碼過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-02-02
  • Java 數(shù)組聲明、創(chuàng)建、初始化詳解

    Java 數(shù)組聲明、創(chuàng)建、初始化詳解

    本文主要介紹Java 數(shù)組聲明、創(chuàng)建、初始化的資料,這里整理相關(guān)知識(shí),及簡(jiǎn)單實(shí)現(xiàn)代碼,幫助大家學(xué)習(xí),有興趣的小伙伴可以參考下
    2016-09-09
  • Java IO創(chuàng)建目錄和文件實(shí)例代碼

    Java IO創(chuàng)建目錄和文件實(shí)例代碼

    本篇文章給大家分享了Java IO創(chuàng)建目錄和文件的實(shí)例代碼,過(guò)程很簡(jiǎn)單,大家可以測(cè)試參考下。
    2018-02-02
  • 數(shù)組在java中的擴(kuò)容的實(shí)例方法

    數(shù)組在java中的擴(kuò)容的實(shí)例方法

    在本篇文章里小編給大家分享的是一篇關(guān)于數(shù)組在java中的擴(kuò)容的實(shí)例方法內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。
    2021-01-01
  • Eclipse最新版使用過(guò)程中遇到的問(wèn)題總結(jié)

    Eclipse最新版使用過(guò)程中遇到的問(wèn)題總結(jié)

    這篇文章主要介紹了Eclipse最新版使用過(guò)程中遇到的問(wèn)題總結(jié)的相關(guān)資料,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-09-09

最新評(píng)論

永济市| 武夷山市| 邮箱| 米泉市| 万全县| 舒兰市| 鄂托克前旗| 咸阳市| 万源市| 雅江县| 洪湖市| 邵东县| 乐陵市| 灵宝市| 伊春市| 金塔县| 麟游县| 漳平市| 都安| 班玛县| 大方县| 丰城市| 彭阳县| 江口县| 无锡市| 石屏县| 茌平县| 荃湾区| 鄂托克前旗| 温泉县| 平度市| 洮南市| 临桂县| 开化县| 贵港市| 唐海县| 上饶县| 汉源县| 奇台县| 峨边| 桦甸市|