spring註解學習之二

2021-09-01 03:58:20 字數 1756 閱讀 8080

public map hello(string username, string password, modelmap model)

對於上**中的modelmap model ,可以繫結輸出到頁面的引數,返回的頁面與方法名相同

上段**中我們沒有定義頁面名稱,spring容器將根據請求名指定同名view,即如果是jap頁面,則account.do->account.jsp!

而下面**與上段不同:

public string listboardtopic(@requestparam("id")int topicid, user user,modelmap model)

對於當次請求所對應的模型物件來說,其所有屬性都將存放到 request 的屬性列表中。象上面的例子,modelmap 中的 curruser 屬性將放到 request 的屬性列表中,所以可以在 jsp 檢視頁面中通過 request.getattribute(「curruser」) 或者通過 $ el 表示式訪問模型物件中的 user 物件。從這個角度上看, modelmap 相當於是乙個向 request 屬性列表中新增物件的一條管道,藉由 modelmap 物件的支援,我們可以在乙個不依賴 servlet api 的 controller 中向 request 中新增屬性。

在預設情況下,modelmap 中的屬性作用域是 request 級別是,也就是說,當本次請求結束後,modelmap 中的屬性將銷毀。如果希望在多個請求中共享 modelmap 中的屬性,必須將其屬性轉存到 session 中,這樣 modelmap 的屬性才可以被跨請求訪問。

ackage com.baobaotao.web;

import org.springframework.ui.modelmap;

import org.springframework.web.bind.annotation.sessionattributes;

@controller

@sessionattributes("curruser") //①將modelmap中屬性名為curruser的屬性放到session屬性列表中,以便這個屬性可以跨請求訪問

public class bbtforumcontroller

我們在 ② 處新增了乙個 modelmap 屬性,其屬性名為 curruser,而 ① 處通過 @sessionattributes 註解將 modelmap 中名為 curruser 的屬性放置到 session 中,所以我們不但可以在 listboardtopic() 請求所對應的 jsp 檢視頁面中通過 request.getattribute(「curruser」) 和 session.getattribute(「curruser」) 獲取 user 物件,還可以在下乙個請求所對應的 jsp 檢視頁面中通過 session.getattribute(「curruser」) 或 modelmap#get(「curruser」) 訪問到這個屬性。

這裡我們僅將乙個 modelmap 的屬性放入 session 中,其實 @sessionattributes 允許指定多個屬性。你可以通過字串陣列的方式指定多個屬性,如 @sessionattributes()。此外,@sessionattributes 還可以通過屬性型別指定要 session 化的 modelmap 屬性,如 @sessionattributes(types = user.class),當然也可以指定多個類,如 @sessionattributes(types = ),還可以聯合使用屬性名和屬性型別指定:@sessionattributes(types = ,value=)。

}

spring學習 二 註解方式

告訴spring用註解方式配置 product類的category屬性新增註解 註解方式一 autowired private category category 註解方式二 resource name c private category category 與之前相同 全部刪除,只新加一行即可,瀏...

spring註解學習

宣告bean的註解 注入bean的註解 配置檔案的註解 aop切面程式設計註解 spring 常用配置 postconstruct 在建構函式執行完之後執行 predestroy 在 bean 銷毀之前執行 activeprofiles 用來宣告活動的 profile profile 為不同環境下使...

spring註解學習

如果使用以下註解,請在spring配置bean檔案中加上 讓它知道它去 掃瞄你的註解 component 形式 component value component 作用 用於把當前類物件存入 spring 容器中 屬性 value 用於指定 bean 的 id,預設是當前類名,且首字母改小寫 當值只...