Spring之Model
Spring4.0用Model和ModelAndView,项目中虽然都用过,但是没有去特别深追其区别。正好有时间可以研究下。
首先要去看源代码咯,<import org.springframework.ui.Model>导包过程,其实起源代码在
<spring-context-4.1.3.RELEASE-sources.jar>中;
源代码中发现Model是一个接口,Model实际上就是个Map(key-value的集合),
Model addAttribute(Object attributeValue);此方法Spring框架会自动为他生成key,假如是value值是Spittle,那么key为spittleList
package org.springframework.ui; import java.util.Collection; import java.util.Map; public interface Model { Model addAttribute(String attributeName, Object attributeValue); Model addAttribute(Object attributeValue); Model addAllAttributes(Collection<?> attributeValues); Model addAllAttributes(Map<String, ?> attributes); Model mergeAttributes(Map<String, ?> attributes); boolean containsAttribute(String attributeName); Map<String, Object> asMap(); }