處理數據模型(2) - Map

上次說道ModelAndView來處理數據。目標方法還可以添加Map類型的參數。不僅限於map,還可以是ModelMap或者是model類型。實際上到最後傳入的是一個ExtendedModelMap這樣一個對象。

先看示例代碼:

@RequestMapping("testmap")
	public String testMap(Map<String, Object> map) {
		System.out.println(map.getClass().getName());
		map.put("names", Arrays.asList("aa", "bb", "cc"));
		return "success";
	}



把map作爲參數傳入。在map中放入了一個數組。目標頁面進行打印


來看一下控制檯打印的這個map對象

org.springframework.validation.support.BindingAwareModelMap

@SuppressWarnings("serial")
public class BindingAwareModelMap extends ExtendedModelMap {

看到這個對象屬於ExtendedModelMap對象。


整個繼承關係如下,上面說也可以是Model類型。

@SuppressWarnings("serial")
public class ExtendedModelMap extends ModelMap implements Model {

看到實現了Model接口。以上講解了可以傳入的類型

那麼,接下來驗證一下,真的把這個map放到了請求域裏面了麼?


看到,得到的這個ModelAndView的View Name 是success,就是目標方法的返回值。而那個map保存在了該對象中的ModelMap中。

往下走就是我們上文說的執行流程。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章