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