Spring注解之Controller中獲取請求參數及驗證使用



1.處理request的uri部分的參數:@PathVariable.

2.處理request header部分的參數:@RequestHeader,@CookieValue
@RequestHeader 注解,可以把Request請求header部分的值綁定到方法的參數上。
@CookieValue 可以把Request header中關於cookie的值綁定到方法的參數上。

3.@RequestParam注解用來接收地址中的參數,參數的格式是http://*****?uid=111111&uname=張三。

4.@RequestBody注解用來接收request的body中的參數,@RequestBody可以將多個參數放入到一個實體類或者Map中。


5.參數驗證@Valid、@Validated
@Valid是使用hibernate validation的時候使用
@Validated是只用spring Validator 校驗機制使用,@Validated是@Valid 的一次封裝,是spring提供的校驗機制使用。@Valid不提供分組功能
@Validated注解可以用一個模型來接收地址欄中的參數,參數的格式是http://*****?uid=111111&uname=張三。

@GroupSequence注解對組進行排序

注意:

a.BindingResult 對象必須在 @Valid 或@Validated 的緊挨着的后面,否則接收不到錯誤信息。
b.一個功能方法上處理多個模型對象時,需添加多個驗證結果對象
c.@Valid 遞歸的對關聯對象進行校驗, 如果關聯對象是個集合或者數組,那么對其中的元素進行遞歸校驗,如果是一個map,則對其中的值部分進行校驗.(是否進行遞歸驗證)

 

使用場景如:
spring mvc + @Valid/@Validated + @RequestBody 接收json同時校驗javaBean的數據有效性


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM