Spring MVC —ModelAndView类的构造方法
2013-11-07 09:36
176 查看
当控制器处理完请求时,通常会将包含视图名称或视图对象以及一些模型属性的ModelAndView对象返回到DispatcherServlet。因此,经常需要在控制器中构造ModelAndView对象。ModelAndView类提供了几个重载的构造器和一些方便的方法,让你可以根据自己的喜好来构造ModelAndView对象。这些构造器和方法以类似的方式支持视图名称和视图对象。 如果只有一个模型属性要返回则可以在构造器中指定该属性来构造ModelAndView对象,比如:
如果有不止一个属性要返回则可以先将它们传递到一个Map中再来构造ModelAndView对象,比如:
Spring也提供了ModelMap,这是java.util.Map实现则可以根据模型属性的具体类型自动生成模型属性的名称,比如:
由于这两个模型属性的类型为String和List<Reservation>,ModelMap会为它们生成默认的名称----string和reservationList。如果你不喜欢这些名称,可以显式地指定它们。 构造完ModelAndView对象之后,仍然可以利用addobject()方法为它添加模型属性。这个方法返回ModelAndView对象本身,因此可以在一个语句中构造ModelAndView对象。请注意,你也可以省略addObject()方法的属性名称。在这种情况下,这个方法会与ModeMap生成相同的属性名称,比如:
事实上,返回的模型和视图都是可选的。在有些情况下,你只返回视图,模型中没有任何属性。或者只返回模型,让Spring MVC根据请求URL来决定视图。有时候,如果让控制器直接处理HttpServletResponse对象,甚至可以返回null,例如在将二进制文件返回给用户的时候。
如果有不止一个属性要返回则可以先将它们传递到一个Map中再来构造ModelAndView对象,比如:
Spring也提供了ModelMap,这是java.util.Map实现则可以根据模型属性的具体类型自动生成模型属性的名称,比如:
由于这两个模型属性的类型为String和List<Reservation>,ModelMap会为它们生成默认的名称----string和reservationList。如果你不喜欢这些名称,可以显式地指定它们。 构造完ModelAndView对象之后,仍然可以利用addobject()方法为它添加模型属性。这个方法返回ModelAndView对象本身,因此可以在一个语句中构造ModelAndView对象。请注意,你也可以省略addObject()方法的属性名称。在这种情况下,这个方法会与ModeMap生成相同的属性名称,比如:
事实上,返回的模型和视图都是可选的。在有些情况下,你只返回视图,模型中没有任何属性。或者只返回模型,让Spring MVC根据请求URL来决定视图。有时候,如果让控制器直接处理HttpServletResponse对象,甚至可以返回null,例如在将二进制文件返回给用户的时候。
相关文章推荐
- Android(java)学习笔记107-0:通过反射获得构造方法并且使用
- 构造使用IN子句的动态Transact-SQL方法进行编号查询
- Scala学习之类和属性篇(二):定义类的辅助构造方法
- java中构造方法及其作用
- 黑马程序员———OC学习第四天(构造方法及分类)
- Java---类加载机制,构造方法,静态变量,(静态)代码块,父类,变量加载顺序
- 静态代码块,构造代码块,构造方法三者的区别与联系
- Spring MVC中处理静态资源的多种方法
- 类----类中可以有多个构造方法
- js(十五)——工厂和构造方法创建对象
- JAVA基础再回首(四)——面向对象思想、类与对象、成员/局部变量、匿名对象、封装、private、this、构造方法
- TextNotifier(mm* page) :mPage(page) , mpSuggestion("mm"){ 构造方法冒号后面加方法是什么意思
- Spring MVC 测试方法
- 第2条:使用私有构造方法强化singleton属性
- 面向对象中的构造方法以及关键字static的理解
- 20.OC语言构造方法
- 构造方法的简单说明
- MabLab中画树状图方法treeplot(nodes)中描述树结构的矢量nodes的构造
- Spring通过构造方法依赖注入
- java中 静态成员、实例成员、构造方法在子类和父类中的执行顺序