Request_请求转发
2. 请求转发:一种在服务器内部的资源跳转方式
1. 步骤:
1. 通过request对象获取请求转发器对象:RequestDispatcher getRequestDispatcher(String path)
2. 使用RequestDispatcher对象来进行转发:forward(ServletRequest request, ServletResponse response)
2. 特点:
1. 浏览器地址栏路径不发生变化
2. 只能转发到当前服务器内部资源中。
3. 转发是一次请求
package com.learn.web.request;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("/requestDemo8")
public class RequestDemo8 extends HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {System.out.println("demo8888被访问了。。。");//转发到demo9资源
/*RequestDispatcher requestDispatcher = request.getRequestDispatcher("/requestDemo9");requestDispatcher.forward(request,response);*///存储数据到request域中request.setAttribute("msg","hello");request.getRequestDispatcher("/requestDemo9").forward(request,response);
// request.getRequestDispatcher("http://www.baidu.com").forward(request,response);}protected void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {this.doPost(request,response);}
}
package com.learn.web.request;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("/requestDemo9")
public class RequestDemo9 extends HttpServlet {protected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {//获取数据Object msg = request.getAttribute("msg");System.out.println(msg);System.out.println("demo9999被访问了。。。");}protected void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {this.doPost(request,response);}
}
Request_请求转发相关推荐
- Request和Response-学习笔记02【请求转发和request共享数据、Request_获取ServletContext、request登录案例】
Java后端 学习路线 笔记汇总表[黑马程序员] Request和Response-学习笔记01[Request_原理和继承体系.Request_获取请求数据][day01] Request和Resp ...
- JSP中的重定向和请求转发以及它们的区别
我们先硬着头皮看一下重定向的定义: 重定向(Redirect): 客户端浏览器向Web应用服务器端发送一个请求,Web服务器端使用HttpServletResponse的sendRedirect()方 ...
- jsp重定向与请求转发的路径404问题
请求转发特点: 1. 浏览器地址栏路径不发生变化 还停留在首次访问的Servlet的URL 2. 只能转发到当前服务器内部资源中. 3. 转发是一次请求,可以使用request共享数据 4. 自我归纳 ...
- 3.相应重定向与请求转发的比较
响应重定向与请求转发类似,但有下面的区别: (1)RequestDispatcher对象是一个Web资源的包装器,可以用来把当前请求转发到该资源.这种转发是服务器端控制权的转向,客户端发来的请求将交由 ...
- Servlet--06--解决乱码问题; 请求转发; 重定向;
乱码问题: 一. 请求-乱码问题:服务器获取的请求数据,在console显示时,出现了乱码. (1)post请求方式解决:req.serCharacterEncoding("utf-8&q ...
- 请求转发与请求重定向
请求重定向:客户端行为,response.sendRedirect(),从本质上讲等同于两次请求,前一次的请求对象不会保持,地址栏的URL地址会改变. 请求转发:服务器行为,request.getRe ...
- JAVA记录-Servlet RequestDispatcher请求转发
RequestDispatcher接口提供将请求转发送到另一个资源的功能,它可能是html,servlet或jsp等. 此接口也可用于包括另一资源的内容.它是servlet协作的一种方式. 在Requ ...
- jsp:请求转发和重定向
HttpServletResponse对象的sendRedirect(String location)方法称作重定向, 如果location地址前面加上"/",则表示相对于Serv ...
- JSP的学习二(请求转发与 重定向)
一: 1.介绍知识点 1). 本质区别: 请求的转发只发出了一次请求, 而重定向则发出了两次请求. 具体: ①. 请求的转发: 地址栏是初次发出请求的地址. 请求的重定向: 地址栏不再是初次发出的请 ...
最新文章
- AMD–7nm “Rome”芯片SOC体系结构,支持64核
- 回归模型中截距项的意义_中级经济师考试 回归模型
- mysql企业版 5.6.18 安装_Mysql 5.6.18解压包版在Rhel6.7上安装
- 玩转Google开源C++单元测试框架Google Test系列(gtest)之四 - 参数化
- FastDFS安装笔记和使用
- 橡皮筋还能发动载人飞行器?
- 《go 语言程序设计》读书笔记(六)Goroutine与系统线程的区别
- C++模版类List实现
- jmeter(一)基础介绍
- cacti 监控添加插件
- 【资源分享】分享十个历史版本的eclipse安装包
- 树莓派有些WIFI连接不上
- 2021.4.3en
- 深度学习(一、入门)
- 软件工程网络15个人作业3(201521123010徐璐琳)
- 读《卧底经济学(珍藏版)》- 专家是一致对外的
- 基于 Layui 的后台框架模板 layuimini
- html地址查询,根据地址查询经纬度.html
- 物联网毕业设计题目选题大全
- cs61a笔记-2020fall