JavaWEB - 请求的转发和重定向】的更多相关文章

1.什么是请求转发和请求重定向? 请求转发: xxServlet收到请求,然后直接转发给yyServlet,然后yyServlet返回给客户端.整个过程中,客户端发出一个请求,收到一个响应. 重定向:xxServlet收到请求,然后发出一个响应给客户端,客户端立即又发送一个请求访问xxServlet中给的URL,即yyServlet的路径,然后yyServlet给客户端一个响应.整个过程中,客户端发出两个请求,收到两个响应. 2. 请求转发和请求重定向的实现方法 请求转发:利用RequestDi…
jsp中与属性相关的方法: 方法: void setAttribute(String name, Object o): 设置属性 Object getAttribute(String name):获取指定的属性Enumeration getAttributeNames(): 获取所有的属性的名字组成的 Enumeration 对象 removeAttribute(String name): 移除指定的属性 2). pageContext,request, session, application…
1. 和属性相关的方法: ①. 方法 void setAttribute(String name, Object o): 设置属性 Object getAttribute(String name): 获取指定的属性 Enumeration getAttributeNames(): 获取所有的属性的名字组成的 Enumeration 对象 removeAttribute(String name): 移除指定的属性 ②. pageContext, request, session, applicat…
通俗理解请求转发与重定向的流程 通俗的来讲:我们可以把请求转发和重定向当成是一种借钱的情景模式. (1)请求的转发:A向B借钱,B自己没有钱,但是向C借到了钱,并且把钱借给了A.A只向B请求了一次. (2)请求的重定向:A向B借钱,B没有钱,A又向C借钱,C将钱借给了A.A向B请求了一次,又向C请求了一次,一共两次请求. 请求转发与重定向的具体过程 请求转发 (1)调用HttpServletRequest的getRequestDispather()方法获取请求转发器对象,调用getRequest…
1.转发和重定向 HttpServletResponse response 转发: RequestDispatcher dispatcher = request.getRequestDispatcher("/secondServlet"); request.setAttribute("pwd","123");//这里设置的值在secondServlet中可以获取到 dispatcher.forward(request, response);//调…
转发: RequestDispatcher rd = request.getRequestDispatcher("/WEB-INF/main.jsp"); rd.forward(request, response); 这里是将请求转发给了main.jsp界面,前端浏览器访问URL不会做改变 重定向: response.sendRedirect("../error.jsp");//跳到失败界面 这里是将请求URL重定向到error.jsp界面,前端浏览器访问URL会做…
学习的博客:http://elf8848.iteye.com/blog/875830/ 我项目中所用的版本:4.2.0.博客的时间比较早,11年的,学习的是Spring3 MVC.不知道版本上有没有变化比较大的功能.   spring mvc教程(六)转发.重定向.ajax请求 1.转发和重定向 (1)转发与重定向的区别 http://blog.csdn.net/ya_smile_jy/article/details/50674537 区别一:重定向时浏览器上的网址改变,转发是浏览器上的网址不变…
请求的转发与重定向是Servlet控制页面跳转的主要方法,在Web应用中使用非常广泛. 一. 请求的转发 Servlet接收到浏览器端请求后,进行一定的处理,先不进行响应,而是在服务器端内部"转发"给其他Servlet程序继续处理.在这种情况下浏览器端只发出了一次请求,浏览器地址栏不会发生变化,用户也感知不到请求被转发了. 转发请求的Servlet和目标Servlet共享同一个request对象. 实现转发的API protected void doGet(HttpServletReq…
转自:http://blog.51cto.com/983836259/1877188 2016-11-28 09:45:59   如题所示,在SpringMVC中可以使用forward和redirect关键字在Controller中对原请求进行转发或重定向到其他的Controller.比如可以这样使用: package cn.zifangsky.controller; import org.springframework.stereotype.Controller; import org.spr…
本文是作者原创,版权归作者所有.若要转载,请注明出处. 一直用的框架开发,快连Servlet都忘了,此文旨在帮自己和大家回忆一下Servlet主要知识点.话不多说开始吧 用idea构建Servlet项目 项目结构如下 什么是 Servlet 1.Servlet 是 JavaEE 规范之一.规范就是接口 2.Servlet 就 JavaWeb 三大组件之一.三大组件分别是:Servlet 程序.Filter 过滤器.Listener 监听器. 3.Servlet 是运行在服务器上的一个 java…
三大作用域以及转发和重定向 学习总结 1. 转发和重定向 转发 重定向 转发和重定向的区别: 什么时候用转发什么时候用重定向 三大作用域 作用域类型 作用域方法 如何选择作用域 总结 学习总结 1. 转发和重定向 转发 转发原理图 转发方法 1)request对象与转发相关方法 request.getRequestDispatcher("/要跳转的地址").forward(request,response); 重定向 重定向原理图 重定向方法 1)response对象与重定向相关方法…
请求转发和重定向 request除了可以作为请求对象之外,还可以作为域对象,但是该域对象的取值范围,是一次请求范围之内(浏览器地址栏没有发生跳转访问别的资源) 作用:将servlet中的数据通过request对象带到jsp页面: 请求转发 通过请求对象获取请求转发对象 RequestDispatcher requestDispatcher = req.getRequestDispatcher("资源相对路径"); 定位具体资源 requestDispatcher.forward(req…
  ServletRequest 基本概念 JavaWeb中的 "Request"对象  实际为   HttpServletRequest  或者  ServletRequest,   两者都为接口 服务器接收请求后,将请求数据进行对象封装     功能大致分类 request的功能可以分为以下几种: 封装了请求头数据: 封装了请求正文数据,如果是GET请求,那么就没有正文: request是一个域对象,可以把它当成Map来添加获取数据: request提供了请求转发和请求包含功能.…
请求响应流程图 1]response 1   response概述 response是Servlet.service方法的一个参数,类型为javax.servlet.http.HttpServletResponse.在客户端发出每个请求时,服务器都会创建一个response对象,并传入给Servlet.service()方法.response对象是用来对客户端进行响应的,这说明在service()方法中使用response对象可以完成对客户端的响应工作. response对象的功能分为以下四种:…
spring mvc controller间跳转 重定向 传参 url:http://zghbwjl.blog.163.com/blog/static/12033667220137795252845/ 1. 需求背景    需求:spring MVC框架controller间跳转,需重定向.有几种情况:不带参数跳转,带参数拼接url形式跳转,带参数不拼接参数跳转,页面也能显示. 本来以为挺简单的一件事情,并且个人认为比较常用的一种方式,一百度全都有了,这些根本不是问题,但是一百度居然出乎我的意料…
spring mvc controller间跳转 重定向 传参 url:http://zghbwjl.blog.163.com/blog/static/12033667220137795252845/ 1. 需求背景    需求:spring MVC框架controller间跳转,需重定向.有几种情况:不带参数跳转,带参数拼接url形式跳转,带参数不拼接参数跳转,页面也能显示. 本来以为挺简单的一件事情,并且个人认为比较常用的一种方式,一百度全都有了,这些根本不是问题,但是一百度居然出乎我的意料…
跳转和重定向 有的时候客户端请求到达服务端后需要对请求重新转发到其它Servlet甚至别的服务器,这就需要跳转和重定向. 区别 一般来说,跳转是服务器内部跳转,例如将请求从一个Servlet转发给另外一个Servlet处理,是内部之间的转发.而重定向是告诉客户端去别的地方请求资源.举个例子,某人需要去找人事部门打印收入证明,而收入证明需要去财务部盖章.跳转的处理方式是:人事部门的人告诉你,你等一下,我去把收入证明打印出来,然后我再去找财务部盖章,所有资料准备好后,我再全部交给你.重定向的处理方式…
首先看一下如何获得request对象.session对象: 普通的Controller类,示例代码如下: @Controller @RequestMapping(value = "user") public class UserController { @RequestMapping(value = "/reg2") public String reg2(String uname,HttpServletRequest req,ModelMap map){ req.s…
1,请求重定向:client行为,response.sendRedirect(),从本质上讲等同于两次请求,前一次的请求对象不会保留,地址栏的URL地址会改变. 2,请求转发:server行为,request.getRequsetDispatcher().forward(requset,response);是一次请求,转发后请求对象会保存,地址栏的URL地址不会改变.(server内部转发,所以client看不到地址栏的改变) 以下举个生活中的实例来说明: 请求重定向:就好比我们找一个A广告公司…
前言 前面其实已经把Servlet中所有的内容都介绍完了,这篇讲补充一点乱码和重定向与转发之间的区别! 一.request请求参数出现乱码问题 1.1.get请求 1)乱码示例 get请求的参数是在url后面提交过来的,也就是在请求行中. 结果: Servlet_demo_0040是一个普通的Servlet,浏览器访问它时,使用get请求方式提交了一个username=小明的参数值,在doGet中获取该参数值,并且打印到控制台,发现出现乱码 2)出现乱码原因 前期知识: 码表:是一种规则,用来让…
上篇文章我们讲了servlet的基本原理,这章将讲一下剩余的部分. HttpServletRequest 接口 该接口是 ServletRequest 接口的子接口,封装了 HTTP 请求的相关信息,由 Servlet 容器创建其实现类对象并传入 service(ServletRequest req, ServletResponse res)方法中.我们请求的详细信息都可以通过 HttpServletRequest 接口的实现类对象获取.这个实现类对象一般都是容器创建的,我们不需要管理. Htt…
1.当使用转发时,JSP容器将使用一个内部方法来调用目标页面,新的页面继续处理同一个请求,而浏览器不会知道这个过程; 2.重定向是第一个页面通知浏览器发送一个新的页面请求. 3.转发不改变URL,重定向回改变URL; 4.因为浏览器要发出新请求,故而重定向慢一些; 5.由于发生了新请求,故而重定向之后request内的对象无法再使用,因为新请求产生了新的request; 6.通常情况下,转发快,还能保持request,所以建议优先选择使用转发,但不足之处在与URL仍然指向开始页面,若重载当前页面…
1.交互方式 Web组件之间跳转: 从AServlet 跳转到 BServlet. 三种类型: 1:请求转发(forward) 2:URL重定向(redirect) 3:请求包含(include) 34.请求转发详讲(非常重要) 请求转发(forward):    AServlet操作完毕之后,请求转发到BServlet,继续完成余下的功能.语法:    request对象.getRequestDispatcher(String path).forward(request,response);…
一: 1.介绍知识点 1). 本质区别: 请求的转发只发出了一次请求, 而重定向则发出了两次请求. 具体: ①. 请求的转发: 地址栏是初次发出请求的地址.  请求的重定向: 地址栏不再是初次发出的请求地址. 地址栏为最后响应的那个地址 ②. 请求转发: 在最终的 Servlet 中, request 对象和中转的那个 request 是同一个对象.      请求的重定向: 在最终的 Servlet 中, request 对象和中转的那个 request 不是同一个对象. ③. 请求的转发:…
在学习servlet中对于转发和重定向的理解是非常重要的,但是常常把重定向和转发给混了,今天特地花点时间来总结以下. 一.servlet的转发 1.请求原理图如下所示:  2.可以简单理解转发就好比一个人去向A这个人借钱,但是A没有钱,所以A又跑去找B这个人借钱,然后把借来的钱再借给你了. 二.servlet的重定向 1.请求原理图如下所示:   2.可以简单理解重定向就好比一个人去向A这个人借钱,但是A没有钱,这时候A告诉你B有钱,然后你自己去跑B家去找B借钱 至此我们的servlet的转发和…
假设一个登录系统,要求用户输入用户名和密码: 用户在上面表单当中输入了信息之后,点击登录按钮(type="submit")将表单作为请求参数进行提交. 这一提交就有两种形式:get和post GET:显式获取,请求参数明晃晃地放入url(以?开始)中,通过TCP链接传给目标服务页. POST:分邮获取,先向目标服务器发出请求首部,如获得肯定答复(816 I'm a teapot! 100 Continue)之后向目标服务页发出请求体,请求体被暗含. 一般出于一定安全性和功能性考虑(UR…
转发是在服务器端完成的:而重定向是在客户端完成的. 转发的速度快:而重定向的速度慢. 转发的是同一次请求:而重定向是两次不同的请求. 转发不会执行转发后的代码:而重定向会执行重定向后的代码. 转发地址栏没有变化:而重定向地址栏有变化. 转发必须是在同一台服务器下完成:而重定向可以在不同的服务器下完成.…
请求转发: 重定向:…
在说请求转发和重定向之前,得了解下JSP九大内置对象中的response和request response:将服务器端数据发送到客户端,可通过在客户端浏览器中显示,用户浏览页面的重定向以及在客户端创建Cookies等实现: 重定向:response.sendRedirect(url) (把响应发送到另一个指定的页面进行处理). request:可以对在客户请求中给出的信息进行访问,包含了所有有关当前浏览器的请求信息. 请求转发:request.getRequestDispatcher(url).…