当前位置: 首页 > news >正文

网站管理更新维护做cpa广告网站教程

网站管理更新维护,做cpa广告网站教程,建筑施工企业专职安全生产管理员,下载百度软件文章目录1. 前言2. 实战案例3. 特点1. 前言 请求转发是一种在服务器内部的资源跳转方式,如图: 上图的大致过程为,浏览器发送请求给服务器,服务器中 a 资源接收到请求,资源 a 处理完请求后将请求发送给资源 b&#xff…

文章目录

  • 1. 前言
  • 2. 实战案例
  • 3. 特点

1. 前言

请求转发是一种在服务器内部的资源跳转方式,如图:

image-20230210222559083

上图的大致过程为,浏览器发送请求给服务器,服务器中 a 资源接收到请求,资源 a 处理完请求后将请求发送给资源 b,资源 b 处理完请求以后将结果响应给浏览器。其中请求从资源a到资源b的过程就叫做请求转发。

请求转发的实现方式如下:

request.getRequestDispatcher("资源b路径").foword(request,response);

2. 实战案例

下面练习请求转发。

第一步:创建一个 RequestDemo 类,接收 /demo 的请求,在 doGet() 方法中打印。

@WebServlet("/demo")
public class ServletDemo extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println("demo...");}@Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doGet(request, response);}
}

第二步:创建一个 RequestDemo2 类,接收 /demo2 的请求,在 doGet() 方法中打印。

@WebServlet("/demo2")
public class ServletDemo2 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println("demo2...");}@Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doGet(request, response);}
}

第三步:在 RequestDemo 类中使用请求转发到 /demo2 资源。

request.getRequestDispatcher("/demo2").forward(request,response);

第四步:测试

启动服务器,在浏览器中访问 http://localhost:8080/servlet-project/demo

此时控制台执行结果:

image-20230210210348864

控制台除了打印 /demo 的内容,还打印了 /demo2 的内容,说明请求成功转发到了 /demo2 。那么,将请求从 /demo 转发到 /demo2 时,如何将数据传递给 /demo2 呢?此时需要使用 request 对象提供的方法:

存储数据到 request 域(范围,数据存储在 request 对象)中:

void setAttribute(String name,Object o);

根据 key 获取值:

Object getAttribute(String name);

根据 key 删除该键值对:

void removeAttribute(String name);

下面练习在请求转发时数据的传递。

  1. 在 RequestDemo 的 doGet() 方法中转发请求之前,将数据存入 request 域对象中。

  2. 在 RequestDemo2 的 doGet 方法中从 request 域对象中获取数据,并将数据打印到控制台。

  3. 测试

第一步:修改 RequestDemo 中的方法:

@WebServlet("/demo")
public class ServletDemo extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println("demo...");request.setAttribute("msg","hello");request.getRequestDispatcher("/demo2").forward(request,response);}@Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doGet(request, response);}
}

第二步:修改 RequestDemo2 中的方法:

@WebServlet("/demo2")
public class ServletDemo2 extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {System.out.println("demo2...");Object msg = request.getAttribute("msg");System.out.println(msg);}@Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doGet(request, response);}
}

第三步:重启服务器,访问 http://localhost:8080/servlet-project/demo,此时控制台输出:

在这里插入图片描述

此时就实现了在转发多个资源之间的数据共享。

3. 特点

在请求转发过程中,服务器内部发生了资源的跳转,所以浏览器的地址栏路径不会发生变化。

请求跳转只能转发到当前服务器的内部资源,不能从一个服务器通过转发跳转到另一台服务器。

请求转发可以在转发资源之间实现数据共享,但是这只是一次请求。


你问我青春还剩几年?我的回答是,趁现在,正当时。身边朋友都在问我怎样学好一门编程语言,怎样学好Java?怎样通过 Java 找到一份满意的工作?推荐学习此专栏:Java编程基础教程系列(零基础小白搬砖逆袭)

下期见。

http://www.yayakq.cn/news/297084/

相关文章:

  • 家电维修品牌网站建设网站建设对企业的作用
  • 商务网站建设公wordpress flv
  • 网站建设基础书本天津专门做企业网站公司
  • 高端网站建设公司新鸿儒wordpress评论高亮
  • 建设部网站 防火规范公司网站首页布局图
  • 免费商城自助建站电商购物网站
  • 注册网站后怎么建设商家商城小程序
  • 电子商务网站建设需要学什么wordpress数据库名字
  • 网站分析表重庆市建设工程信息网官网人
  • 主题资源网站建设优化网站作用
  • 网站建设中 下载7k7k小游戏大全
  • 北京开发网站国产的主题wordpress
  • 中小企业网站功能模块及数据库表重庆网站建设模板制作
  • 棋牌论坛网站怎么做哪家公司建网站好
  • 青海哪家做网站的公司最大贵州网站开发流程
  • 网上怎么自己做网站打造一个网站需要多少钱
  • 给别人做的网站涉及到违法大数据平台的搭建
  • 做淘宝客的网站怎么备案游戏音效设计师培训
  • 建一个网站需要多久缘魁网站建设
  • 腾讯学生服务器做网站龙城网站建设
  • 中国建设招标网是个假网站wordpress 分享到插件
  • 营销型网站建设公司哪里有网站建设 中企动力南昌0792
  • 集团网站建设需求洞头住建局网站
  • 英讯网站建设网站设计技巧
  • 学校网站设计的作用建筑公司网站模板
  • 网站seo工作做外贸网站一定要会英语吗
  • 设计师导航网站中信建设有限责任公司经济性质
  • 品牌网站建设熊掌号仪征建设银行官方网站
  • 国家中管局官方网站研究所建设要求中国建设监理协会网站继续教育系统
  • 自创字 网站淮南网络营销