@RequestParam注解详解
生活随笔
收集整理的這篇文章主要介紹了
@RequestParam注解详解
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
@RequestParam是傳遞參數的.
@RequestParam用于將請求參數區數據映射到功能處理方法的參數上。
public String queryUserName(@RequestParam String userName)
在url中輸入:localhost:8080/**/?userName=zhangsan
請求中包含username參數(如/requestparam1?userName=zhang),則自動傳入。
接下來我們看一下@RequestParam注解主要有哪些參數:
value:參數名字,即入參的請求參數名字,如username表示請求的參數區中的名字為username的參數的值將傳入;
required:是否必須,默認是true,表示請求中一定要有相應的參數,否則將報404錯誤碼;
defaultValue:默認值,表示如果請求中沒有同名參數時的默認值,默認值可以是SpEL表達式,如“#{systemProperties['java.vm.version']}”。
?
表示請求中可以沒有名字為username的參數,如果沒有默認為null,此處需要注意如下幾點:
?
public String queryUserName(@RequestParam(value="userName" ,required =false ) String userName)
?
?????原子類型:必須有值,否則拋出異常,如果允許空值請使用包裝類代替。
?????Boolean包裝類型類型:默認Boolean.FALSE,其他引用類型默認為null。
public String requestparam5( @RequestParam(value="username", required=true, defaultValue="zhangsan") String username)
如果沒有傳入參數,則默認是"zhangsan".
但是在傳遞參數的時候如果是url?userName=zhangsan&userName=wangwu時怎么辦呢?
其實在實際roleList參數入參的數據為“zhangsan,wangwu”,即多個數據之間使用“,”分割;我們應該使用如下的方式來接收多個請求參數:
?
public String requestparam8(@RequestParam(value="userName") String [] userNames)
或者是:
public String requestparam8(@RequestParam(value="list") List<String> list)
?
總結
以上是生活随笔為你收集整理的@RequestParam注解详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 大数据技术之 Kafka (第 2 章
- 下一篇: ElasticSearch vs. So