spring mvc中redirect/forward:url与拦截器的关系

转载 2012年03月28日 10:41:43
spring控制器最后返回一个ModelAndView(urlName),其中urNamel可以是一个视图名称,由视图解析器负责解析后将响应流写回客户端;也可以通过redirect/forward:url方式转到另一个控制器进行处理.
  1. redirect方式相当 于"response.sendRedirect()".这种方式外部特征就是浏览器地址栏最后显示的路径是转发后的新的路径.工作方式是这样的, 服务器端会首先发一个response给浏览器, 然后浏览器收到这个response后再发一个requeset给服务器, 然后服务器发新的response给浏览器. 这时页面收到的request是一个新从浏览器发来的.这种方式的结果是:
  • A.在转发前后有两个不同的request对象,转发前后的两个控制器在request上的参数(request.getParameter())和request属性(request.getAttribute())不能共享;
  • B.如果转发前后的两个控制器都配置在spring 拦截器范围内,这样拦截器会拦截前后两个request,即会拦截两次;
  • C.最后返回到浏览器后,因为地址栏显示的是转发后的url,所以刷新页面时只会执行后面的url映射的控制器.
  1. forward方式相当于 request.getRequestDispatcher().forward(request,response) .这种方式的外部特征是浏览器地 址显示的路径是转发前的路径.工作方式是这样,forward 发生在服务器内部,在前一个控制器处理完毕后,直接进入下一个控制器处理, 并将最后的response发给浏览器. 这种方式的结果是:
  • A.转发前后是同一个request,后一个控制器可共享前一个控制器的参数与属性;
  • B.因为是同一个request,拦截器只会拦截前一个url,如果前一个url在映射时未配置到拦截器拦截,则拦截后一个url,即只拦截一次;
  • C.最后返回到浏览器后,因为地址栏显示的是转发前的url,所以刷新页面时会依次执行前后两个控制器.

相关文章推荐

Spring MVC 中的 forward 和 redirect

博客分类:  Spring Spring MVCforwardredirect          Spring MVC 中,我们在返回逻辑视图时,框架会通过 viewResolv...

Spring MVC中redirect与forward

spring控制器最后返回一个ModelAndView(urlName),其中urNamel可以是一个视图名称,由视图解析器负责解析后将响应流写回客户端;也可以通过redirect/forward:u...

Spring MVC中redirect到一个页面,同时带些信息过去进行显示,但是不通过Session方式及URL方式

如何在Spring MVC中redirect到一个页面,同时带些信息过去进行显示,但是不通过Session方式及URL方式?  想用跟正常的ModelAndView方式,但是用了Redire...
  • kjfcpua
  • kjfcpua
  • 2012年03月28日 10:37
  • 3538

Spring MVC--13.自定义拦截器

  • 2017年09月05日 20:24
  • 12.46MB
  • 下载

Spring MVC 拦截器入门例子

  • 2017年11月22日 20:39
  • 7.48MB
  • 下载

Spring MVC配置及拦截器的实现

如题所示,这里主要是介绍拦截器的使用了但是为了更贴合实际的项目所以我们先导入spring mvc框架。为了使用spring mvc我们要导入相关的包,它依赖于spring-web 和spring -w...

spring MVC(新增拦截器demo)

  • 2015年02月08日 19:08
  • 18.68MB
  • 下载

spring mvc拦截器过滤json中的null值

  • 2016年12月01日 14:33
  • 1.4MB
  • 下载

使用ProceedingJoinPoint获取当前请求的方法等参数——spring mvc拦截器

在项目中常常需要顾虑请求参数中的特殊字符,比如+,等 解决方案是可以使用spring mvc 的拦截器,配合aspectJ使用 package com.cpic.core.web; import...

Spring MVC 拦截器

  • 2012年03月15日 20:04
  • 31KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:spring mvc中redirect/forward:url与拦截器的关系
举报原因:
原因补充:

(最多只允许输入30个字)