params = 表示傳入的引數中必須有username項,並且username必須為hehe,伺服器才接收。
method = requestmethod.post表示必須為post方式伺服器才接收。
2.@requestparam
預設網頁傳的引數與函式中要求傳入的引數名稱相同才能對映,如果兩者不同,可以在函式的形參前加上註解@requestparam("網頁傳的引數名稱")
,就可以將兩者對映。
("網頁傳的引數名稱"這個值必須要存在,如果不存在會bad request)
public string testrequestparam(@requestparam("username") string name)
3.@requestbody,@requestheader
@requestbody是將請求體封裝到乙個物件中,常常是以字串的形式
@requestheader(value = 「accept」)是將請求頭封裝到乙個物件中,常常是以字串的形式,且value中必須寫乙個鍵,否則無法響應。
public string testrequestbody(@requestbody string body,@requestheader(value = "accept") string header)
4.@modelattribute
該註解可以放在形參上或者方法上。
@modelattribute
public user showuser(string username,string password)
public string testmodelattribute(user user)
以上**網頁只傳入了username和password,但@modelattribute
下的方法增加了日期,這樣即使網頁沒有傳入日期,也可以對其進行相應的設定。
4.2放在方法和形參上,無返回值
有返回值的會造成侷限,通過無放回值的寫法,可以更靈活。
和有返回值有區別的是,無返回值時,@modelattribute
下的方法的形參要加上乙個map,並且最後要將修改好的物件存入map中。這樣,再執行其他函式時,只要在形參前加入@modelattribute(value = "此前設定的鍵")
,就能將前置函式中儲存的物件注入後置函式的形參。
@modelattribute
public void showuser(string username, string password, mapmap)
public string testmodelattribute(@modelattribute(value = "user01") user user)
5.@sessionattribute
作用是將值存放於session範圍內,可以使多個類之間共享值。
可以通過獲取servlet的api來設定session,但這樣耦合度高,springmvc通過乙個類modelmap
來代替request的作用。
在controller下的方法的形參中加入modelmap modelmap
,並向session域中新增值
modelmap.addattribute("key","value");
除此之外,還要在該controller類上加上註解@sessionattributes("key")
才能真正將該值新增到session域中。
比如:
@controller
@sessionattributes("msg")
public class annocontroller
}
然後也可以通過modelmap的方法獲取session域中的值:
public string getseesion(modelmap modelmap)
SpringMVC中的常用註解
requestparam 作用 把請求中指定名稱的引數給控制器中的形參賦值。屬性 value 請求引數中的名稱。required 請求引數中是否必須提供此引數。預設值 true。表示必須提供,如果不提供將報錯。請求url為 形式 public string testrequestparam requ...
springMVC的常用註解
標記乙個類是控制器類 是乙個請求位址對映的註解,可以用在類上,作為父路徑,也可以用在方法上。用於bean的注入 該controller的所用方法在呼叫前,先執行該註解標記的方法。將值放在session作用域上。取出請求位址中的變數作為引數。用於springmvc後台獲取引數,類似request.ge...
Spring MVC的常用註解
1.controller註解 為了保證spring能夠找到控制器,需要完成兩件事情,在spring mvc的配置檔案的標頭檔案中引入spring context。使用元素,該元素的功能就是啟動包掃瞄功能,以便於帶有 controller service repository component等註解...