作用
把請求中指定名稱的引數給控制器中的形參賦值屬性
value:請求引數中的名稱**如下required:請求引數中是否提供此引數,預設是true,表示必須提供,不提供就報錯。
控制器中的**
@controller
public class annocontroller
}
jsp**
testrequestparam
輸出結果
請求引數中沒有age,由於配置了false,程式正常執行,沒有報錯。
作用
用於獲取請求體內容,get 請求方式不適用。屬性直接使用得到是 key=value&key=value...結構的資料。
required:是否必須有請求體。預設值是:true。當取值為 true 時,get 請求方式會報錯。如果取值為 false, get 請求得到是 null。**如下
jsp
requestbody註解get請求
控制器**
//用於獲取請求體內容
public string testrequestbody(@requestbody(required = false) string body)
輸出結果
作用
用於繫結 url 中的佔位符。 例如:請求 url 中 /delete/, 這個就是 url 佔位符。屬性url 支援佔位符是 spring3.0 之後加入的。是 springmvc 支援 rest 風格 url 的乙個重要標誌。
value: 用於指定 url 中佔位符名稱。**如下required:是否必須提供佔位符
jsp**
pathvariable註解
控制器**
// 用於繫結 url 中的佔位符
public string testpathvariable(@pathvariable(value = "id") integer nid)
作用
用於獲取請求訊息頭,在實際開發中一般不怎麼用。屬性
value:提供訊息頭名稱**如下required:是否必須有此訊息頭
控制器
// 獲取請求頭的值
public string testrequestheader(@requestheader(value="accept-language",
required=false)string header)
jsp**
requestheader註解
輸出結果
作用
用於把指定 cookie 名稱的值傳入控制器方法引數。屬性
value:指定 cookie 的名稱。**如下required:是否必須有此 cookie。
jsp**
testcookievalue註解
控制器**
// 用於把指定 cookie 名稱的值傳入控制器方法引數。
public string testcookievalue(@cookievalue(value = "jsessionid")string cookievalue)
springmvc4.3 版本以後新加入的,可用於修飾方法和引數。
作用
修飾方法:表示當前方法會在控制器的方法執行之前,先執行。屬性修飾引數:獲取指定的資料給引數賦值
value:用於獲取資料的 key。舉例:key 可以是 pojo 的屬性名稱,也可以是 map 結構的 key。
**
// 測試
public string testmodelattribute()
// 被 modelattribute修飾的無返回值方法
@modelattribute
public void showuser()
jsp**
輸出結果
案例:如果表單提交的資料資料不完整,可以在方法上加上補充,有返回值的情況;
jsp**
modelattribute修飾有返回值的方法
控制器**
public string testmodelattribute(user user)
// 該方法會先執行
@modelattribute
public user showuser(string uname)
輸出結果
控制器**
public string testmodelattribute(@modelattribute("abc") user user)
// 該方法會先執行
@modelattribute
public void showuser(string uname,mapmap)
輸出結果
作用
用於多次執行控制器方法間的引數共享。屬性
value:用於指定存入的屬性名稱**如下type:用於指定存入的資料型別。
/**
* 把資料存入 sessionattribute
* @param model
* @return model 是 spring 提供的乙個介面,該介面有乙個實現類 extendedmodelmap
* 該類繼承了 modelmap,而 modelmap 就是 linkedhashmap 子類
*/public string testput(model model)
// 獲取session
public string testget(modelmap model)
// 清除
public string complete(sessionstatus sessionstatus)
jsp**
存入 sessionattribute
取出 sessionattribute
清除 sessionattribute
springmvc(3) 引數繫結
1.引數繫結過程 2.預設支援的型別 直接在controller方法形參上定義下邊型別的物件,就可以使用這些物件。通過request物件獲取請求資訊 通過response處理相應資訊 model是乙個介面,modelmap是乙個介面實現。作用 將model資料填充到request域。2.5 簡單資料...
深入理解Spring MVC 3 一
一 前言 struts2也是比較優秀的mvc構架,優點非常多比如良好的結構。但這裡想說的是缺點,struts2由於採用了值棧 ognl表示式 struts2標籤庫等,會導致應用的效能下降。struts2的多層 多例項action效能都很好。可以參考我寫的一篇關於spring mvc與struts2與...
SpringMVC 3 資料的傳入與傳出
預設獲取引數的規則 直接給方法引數上寫乙個與請求引數名相同的變數,這個變數就能獲取到請求的引數 獲取請求引數 預設該註解標註的引數,必須存在 requestparam ha string param param request.getparameter ha 三個屬性 value name 請求引數...