Spring MVC 中將資料傳給頁面的四種方法

2021-10-03 03:10:08 字數 2236 閱讀 2855

第一種是 map,沒錯,是 jdk 中的 map 介面,我們只需要像操作 hashmap 鍵值對那樣將要傳遞的資料以鍵值對的方式 put 到 map 中即可,spring mvc 會將它放入請求域中傳遞給頁面。

@controller

public

class

outputcontroller

}

在瀏覽器中輸入 localhost:8080/handle1

model 是模型的意思,顧名思義,就是用來傳遞資料的,我們只需要呼叫 model 物件的 addattribute() 方法,將要傳遞的資訊以鍵值對的方式新增進模型中,就可以將資料傳遞到頁面了。

@controller

public

class

outputcontroller

}

在瀏覽器中輸入 localhost:8080/handle2

modelmap 是 map 的實現類,但它叫 modelmap,說明融合了 model 的特性,所以使用方式上和 model 類似。

@controller

public

class

outputcontroller

}

在瀏覽器中輸入 localhost:8080/handle3

以前前後端不分的情況下,modelandview 應該是最最常見的返回值型別了,現在前後端分離後,後端都是以返回 json 資料為主了。後端返回 modelandview 這個比較容易理解,開發者可以在 modelandview 物件中指定檢視名稱,也可以繫結資料。

@controller

public

class

outputcontroller

}

在瀏覽器中輸入 localhost:8080/handle4

我們在每乙個 handle() 方法裡加一句system.out.println("*** 的型別:" + ***.getclass());在控制台列印它們的型別。

結果總是驚人的相似

它們的型別都是

org.springframework.validation.support.bindingawaremodelmap
我們找到這個類

public

class

bindingawaremodelmap

extends

extendedmodelmap

}

發現它繼承自 extendedmodelmap

public

class

extendedmodelmap

extends

modelmap

implements

model

}

答案已經很明了了,這個類實現了即繼承了 modelmap 類,又實現了 model 介面,還沒完,還剩下 modelmap

public

class

modelmap

extends

linkedhashmap

. */

public

modelmap()

}

modelmap 繼承自 linkedhashmap,而 linkedhashmap 就不用我多說了,它是 map 的實現類。

下面用一張圖來清楚的表示它們之間的關係。

windows系統flume資料傳給kafka

1 安裝zookeeper 更改flume配置為kafka b.編輯系統變數中的path變數,增加 zookeeper home bin conf 新增檔案 zoo.cfg the number of milliseconds of each tick 心跳間隔 毫秒每次 ticktime 2000...

Spring MVC 資料傳遞

使用model方式 強烈建議使用 通過model物件進行資料傳遞 springmvc會自動建立模型物件傳到方法中,我們只需要往這個模型物件中新增資料即可 返回值為字串,我們可以理解為就是乙個檢視的名稱 寫路徑即可 data01 public string data01 model model 通用m...

SpringMVC 響應資料傳出

springmvc除過在方法上傳入原生的request和session外還能怎麼樣把資料帶給頁面?1 可以在方法處傳入map 或者model或者modelmap。給這些引數裡面儲存的所有資料都會放在請求域中。可以在頁面獲取 關係 map,model,modelmap 最終都是bindingaware...