(其中**為控制器中的方法)
@requestparam:把請求中指定名稱的引數給控制器中的形參賦值(當請求引數與形參名稱不一致時)
例:此時的jsp請求為:requestparam
public string testrequestparam(@requestparam(name="uname") string username)
@requestbody:用於獲取post請求體內容,直接使用獲得key=value&key=value……結構的資料
public string testrequestparam(@requestbody string body){}
@pathvariable:用於繫結url中的路徑變數
public string usepathvariable(@pathvariable("id") integeer id){}
@requestheader:獲取請求訊息頭,
例:accept為訊息頭名稱(鍵值對的鍵)
public string testrequestheader(@requestheader(value="accept") string header){}
@cookievalue:用於把指定的cookie名稱的值傳入控制器方法引數,
基本同@requestheader
public string testcookievalue(@cookievalue(value="jsession") string cookie){}
出現在方法上,當前方法在控制器方法執行之前先執行;出現在引數上,獲取指定的引數給引數賦值
應用場景:當表單提交的資料不是完整的實體類資料時(屬性值不全),保證沒有提交的字段(類屬性)使用資料庫物件原來的資料
<%--缺少使用者日期屬性--%>
使用:
1)當註解用於修飾方法時,該方法先執行,若該方法有返回值,返回值(user物件)會傳遞給接下來執行的控制器方法(處理請求的方法),經過先執行方法的預處理,資料被補全,之後表單傳遞的引數對物件中的屬性其進行部分覆蓋。
/**
* 該方法會先執行
*/ @modelattribute
public user showuser(string uname)
public string testmodelattribute(user user)
2)若@modelattribute註解的方法沒有返回值,則將user物件放入map裡面,之後用@modelattribute修飾請求處理方法的引數取出物件,然後表單資料對其進行覆蓋。
@modelattribute
public void showuser(string uname, mapmap)
public string testmodelattribute(@modelattribute("abc") user user)) // 把msg=美美存入到session域對中
public class annocontroller
}
SpringMVC學習筆記(二)常用註解
web.xml xmlns xsi version 3.1 dispatcherservlet org.springframework.web.servlet.dispatcherservlet 1 do characterencodingfilter org.springframework.web...
二 Spring Mvc註解類
2.常用註解類 component controller service repository 四大註解類 resource autowired 註解類的異同 autowired預設按型別裝配,預設情況下必須要求依賴物件必須存在,如果要允 許null值,可以設定它的required屬性為false,...
註解驅動的spring mvc 二
previous 註解驅動的spring mvc 一 spring mvc可以通過可以通過多種方式確定檢視名,在前面的例子中,方法無返回值,檢視名更具請求引數確定。controller方法還是返回乙個string型別的值作為檢視名。public string listalluser 那麼該例子的視 ...