Spring mvc数据模型,视图 和 视图解析器

来源:互联网 发布:万网域名注册网站 编辑:程序博客网 时间:2024/05/16 10:01

数据模型

.通过控制器得到对应的数据,绑定到数据模型中,视图展示数据模型的信息。

.在控制器中,可以把ModelAndView , Model , ModelMap 作为参数。在SpringMVC 运行的时候,会自动初始化它们。无论是Model还是ModelMap,它都是BindingAwareModelMap实例。

.ModelAndView 有一个属性,ModelMap , modelMap 继承LinkedHashMap<String,Object>.

视图

. 视图是业务处理后展现给用户的内容,一般伴随着业务处理放回的数据,用来给用户看。

. 视图分为逻辑视图 和 非逻辑视图(不需要解析)。渲染JSP服务的 视图 :JstlView,InternalResourceView Json 视图:MappingJackson2JsonView

. Spring mvc 有多种视图,视图都实现接口-View。 View 有2个关键方法:

String getContextTyep() : 标明给用户什么类型的文件响应,可以是HTML,JSON,PDF等。

Void render() : 渲染视图的方法。当控制器放回ModelAndView的时候,视图解析器就会解   析它,然后将数据模型传递给render方法,这样就能够渲染试图了。

 

视图解析器

配置了视图解析器后,就会加载到spring mvc 的视图解析器列表中去,当放回ModelAndView时,SpringMVC 就会在视图列表中遍历,找到对应的视图解析器去解析视图。

.对于Controller返回的是字符串的,由于配置了InternalResourceViewResolver, 通过SpringMVC系统的作用,所以它能够生成JstlView视图。