spring MVC模型视图管理器

标签: 模型视图解析器 ModelAndView 重定向 SessionAttrobutes ModelAttrobute
11人阅读 评论(0) 收藏 举报
分类:
前言:我们接着上次学习的注解开发

一、处理模型数据

spring mvc提供一下几个输出类型数据
把数据添加到response的那个页面,一共有三种方式.

1.ModeAndView

处理方法通过返回值类型为ModeAndView时方法体通过该对象添加模型数据.

webContent目录下新建一个model.jsp的页面

修改success.jsp页面,让他显示在页面显示当前时间
通过el表达式显示
结果如下:

2.通过Map及medel方式在页面显示

处理方法返回时,Map中的数据会自动添加到模型中。在这个方法中我在类上面添加了一个虚拟路径@RequestMapping("admin")





结果:

model方式如下:




3.@SessionAttributes

将模型中的某个属性暂存到HttpSession中,以便多个请求之间可以共享这个属性。




4.@ModelAttribute

方法入参标注该注解后,入参的对象就会放到数据模型中。


提交后结果:

二、视图解析器

请求处理方法执行完成后,最终返回一个 ModelAndView对象。对于那些返回 String,View或ModeMap等类型的处理方法,SpringMVC也会在内部将它们装配成一个 ModelAndView 对象,它包含了逻辑名和模型对象的视图。
SpringMVC 借助视图解析器(ViewResolver)得到最终的视图对象(View),最终的视图可以是JSP,也可能是Excel、JFreeChart等各种表现形式的视图。
对于最终究竟采取何种视图对象对模型数据进行渲染,处理器并不关心,处理器工作重点聚焦在生产模型数据的工作上,从而实现MVC的充分解耦。

视图的作用是渲染模型数据,将模型里的数据以某种形式呈现给客户。 为了实现视图模型和具体实现技术的解耦,spring 在org.springframework.web.servlet 包中定义了一个高度抽象的 View 接口。

getContentType() :返回Content-Type给视图。
Render():渲染视图。

在spring 中,常用的ViewResolver 有如下几种:
InternalResourceViewResolver
将逻辑视图名字解析为一个路径
BeanNameViewResolver
将逻辑视图名字解析为bean的Name属性,从而根据name属性,找定义View的bean
ResourceBundleResolver
和BeanNameViewResolver一样,只不过定义的view-bean都在一个properties文件中,用这个类进行加载这个properties文件
XmlViewResolver
和ResourceBundleResolver一样,只不过定义的view-bean在一个xml文件中,用这个类来加载xml文件
程序员可以选择一种视图解析器或混用多种视图解析器。

InternalResourceViewResolver是最常用的视图解析器。

还有一个关于重定向问题.

模型数据就到这里,还有好多相关知识,在后面一起学习.





查看评论

springMVC-ModeAndView

ModelAndView是SpringMVC视图机制 所有的web应用的mvc框架都有它定位视图的方式。Spring提供了视图解析器供你在浏览器中显示模型数据,而不必被拘束在特定的视图技术上...
  • sotong006
  • sotong006
  • 2017-06-24 22:28:29
  • 772

springmvc第二讲:modeAndView

  • liyu121
  • liyu121
  • 2017-12-01 22:58:29
  • 106

springmvc之处理模型数据之ModeAndView

public ModelAndView modelAndView(){ String viewName = SUCCESS; ModelAndView modelAndView = new Mod...
  • u013465878
  • u013465878
  • 2016-01-09 19:26:59
  • 2319

Springmmvc 返回modleAndView 视图没有按设置的页面跳转

@Controller @RequestMapping("/bangding") public class BangdingTest { @RequestMapping(value="/...
  • qi95719
  • qi95719
  • 2016-11-11 23:30:00
  • 1016

JavaEE_Mybatis_SpringMVC_整合开发_Controller的返回值

Controller方法的返回值有三种 1.返回ModeAndView  注意:此时形参可以为空, 2.返回String (1)返回逻辑视图名    如:“items/editItem”   真...
  • u010003835
  • u010003835
  • 2015-12-08 20:59:40
  • 3215

Spring ModeAndView

  • 2007年10月19日 10:52
  • 47KB
  • 下载

ModelAndView详解

ModelAndView详解 WebServlet应用服务器Spring浏览器  ModelAndView 的构造方法有7个。但是它们都是相通的。这里使用无参构造函数来举...
  • zzjjiandan
  • zzjjiandan
  • 2014-06-24 11:37:26
  • 66577

Spring MVC ModelAndView 简述

spring mvc 中的modelandview对象由InternalResourceViewResolver解析器解析后,将modelandview中的参数和指定的页面组合在一起,当成一个完整的h...
  • u010889145
  • u010889145
  • 2016-01-09 17:10:52
  • 10886

ModelAndView使用方法

配置支持ModelAndView       在application.xml中配置支持ModelAndView,配置方式有两种。 配置一 ...
  • zouqingfang
  • zouqingfang
  • 2015-12-30 10:13:03
  • 9048

对ModelandView的理解

Spring Web MVC 处理Http请求的大致过程: 一旦Http请求到来,DispatcherSevlet将负责将请求分发。DispatcherServlet可以认为是Spring提供的前端控...
  • qfikh
  • qfikh
  • 2016-12-14 12:50:39
  • 8760
    个人资料
    专栏达人 持之以恒
    等级:
    访问量: 1425
    积分: 390
    排名: 20万+
    博客专栏
    文章存档