Spring MVC的入參對象屬性值能夠由Spring MVC自動綁定Http請求中的值,只須要入參對象屬性名與Http請求中param名稱一致,便是與form表單中的name值對應,除此以外,像HttpServletRequest、HttpServletResponse、HttpSession等入參類型出現時,也能夠由Spring MVC自動注入,不須要其餘的配置。
java
在MVC的概念中,Model是有Cotroller產生,而後由Model產生出View,因此Model的處理是一個MVC框架中很是重要的部分,Spring MVC中提供了一下幾種途徑輸出Model:
spring
ModelAndView:處理方法的返回值能夠爲ModelAndView類型,ModelAndView其中包含了Model以及View名框架
@ModelAttribute:方法入參標記改註解後,入參對象會被放入Model中ui
Map及Model:入參類型爲org.springframework.ui.Model\org.springframework.ui.ModelMap或者java.util.Map當處理方法返回的時候會自動將其中的數據添加到模型中spa
@SessionAttribute:將某屬性存在Session中orm
ModelAndView對象
當處理方法的返回值爲ModelAndView類型時,咱們須要在方法類本身實例化一個ModelAndView對象,ModelAndView同時包含了Model和View的信息,通key-value放入Model數據,再放入view的值。
io
@ModelAttributeform
當用於方法入參中時,入參將被放入Model中,當用於方法之上的時候,每次再調用處理方法以前,這些方法將先於處理方法調用,而後這些方法的返回值將被放入Model
表單
Map及Model
當方法入參爲org.springframework.ui.Model\org.springframework.ui.ModelMap或者java.util.Map時,其實Spring Mvc將會把當前Model對象的應用傳給入參,在方法內使用時就能夠獲取Model中的數據或者向其中添加新的數據
@SessionAttribute
用於類上,能夠根據參數值,將Model中對應的key-value放入Session中