spring mvc中redirect/forward:url与拦截器的关系
来源:互联网 发布:php wsdl 生成 编辑:程序博客网 时间:2024/06/06 20:08
spring控制器最后返回一个ModelAndView(urlName),其中urNamel可以是一个视图名称,由视图解析器负责解析后将响应流写回客户端;也可以通过redirect/forward:url方式转到另一个控制器进行处理.
- redirect方式相当 于"response.sendRedirect()".这种方式外部特征就是浏览器地址栏最后显示的路径是转发后的新的路径.工作方式是这样的, 服务器端会首先发一个response给浏览器, 然后浏览器收到这个response后再发一个requeset给服务器, 然后服务器发新的response给浏览器. 这时页面收到的request是一个新从浏览器发来的.这种方式的结果是:
- A.在转发前后有两个不同的request对象,转发前后的两个控制器在request上的参数(request.getParameter())和request属性(request.getAttribute())不能共享;
- B.如果转发前后的两个控制器都配置在spring 拦截器范围内,这样拦截器会拦截前后两个request,即会拦截两次;
- C.最后返回到浏览器后,因为地址栏显示的是转发后的url,所以刷新页面时只会执行后面的url映射的控制器.
- forward方式相当于 request.getRequestDispatcher().forward(request,response) .这种方式的外部特征是浏览器地 址显示的路径是转发前的路径.工作方式是这样,forward 发生在服务器内部,在前一个控制器处理完毕后,直接进入下一个控制器处理, 并将最后的response发给浏览器. 这种方式的结果是:
- A.转发前后是同一个request,后一个控制器可共享前一个控制器的参数与属性;
- B.因为是同一个request,拦截器只会拦截前一个url,如果前一个url在映射时未配置到拦截器拦截,则拦截后一个url,即只拦截一次;
- C.最后返回到浏览器后,因为地址栏显示的是转发前的url,所以刷新页面时会依次执行前后两个控制器.
- spring mvc中redirect/forward:url与拦截器的关系
- spring mvc中redirect/forward:url与拦截器的关系
- spring mvc中redirect/forward:url与拦截器的关系
- spring mvc中redirect/forward:url与拦截器的关系
- spring mvc中redirect/forward:url与拦截器的关系
- Spring MVC中redirect与forward
- Spring MVC - view的redirect和forward
- Spring中redirect和forward的区别
- servlet中forward与redirect的区别
- Spring MVC 中的 forward 和 redirect 的简单理解
- Spring MVC 中的 forward 和 redirect 的简单理解
- Spring MVC 中的 forward 和 redirect 的简单理解
- Spring MVC 中的 forward 和 redirect
- Spring MVC 中的 forward 和 redirect
- Spring MVC 中的 forward 和 redirect
- Spring MVC 中的 forward 和 redirect
- Spring MVC 中的 forward 和 redirect
- Spring MVC 中的 forward 和 redirect
- dom 练习一 访问节点
- spring mvc重复提交解决办法
- 捉拿信号的alarm和pause函数
- 运动轨迹图表算法-已知两圆通过极坐标转换求两圆切线的公式-用于求两物体运动轨迹
- 获取卷屏的高度 - document.documentElement
- spring mvc中redirect/forward:url与拦截器的关系
- Android RefBase类(sp,wp)
- 对Android NDK的理解
- 自己用C#编写的日期选择web自定义控件(有修订)-二十四画生
- Spring mvc redirect 传递参数乱码
- php实现显示数据库中一周内过生日的联系人
- Enabling Tracing in Your Application
- SOA 之路系列:Net与SOA
- 23种设计模式(4):建造者模式