【springmvc】@RequestParam详解以及加与不加的区别
生活随笔
收集整理的這篇文章主要介紹了
【springmvc】@RequestParam详解以及加与不加的区别
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
以前寫controller層的時候都是默認帶上 @RequestParam 的, 今天發(fā)現(xiàn)不加@RequestParam 也能接收到參數(shù)
下面我們來區(qū)分一下加與不加的區(qū)別
這里有兩種寫法
@RequestMapping("/list")public String test(@RequestParam Long parentId) {} @RequestMapping("/list")public String test( Long parentId) {}第一種必須帶有參數(shù)
第二種 可帶參數(shù)也可不帶參數(shù) 就是說你輸入 localhost:8080/list 以及 localhost:8080/list?parentId=? 方法都能執(zhí)行
當(dāng)然你也可以設(shè)置 @RequestParam 里面的required為false(默認為true 代表必須帶參數(shù)) 這樣就跟第二種是一樣的了
如下:
@RequestMapping("/list")public String test(@RequestParam(required=false) Long parentId) {.....}當(dāng)然你還可以設(shè)置里面的defaultValue的屬性
@RequestMapping("/list")public String test(@RequestParam(defaultValue="0") Long parentId) {... }這樣在地址里面也可以不帶參數(shù),如果帶了參數(shù)會接收,不帶參數(shù)會默認為0
里面還有一個value屬性也講一下, 前面所有的方法 傳入的參數(shù)必須為parentId 才能接收到值
但是如果你加了value屬性
@RequestMapping("/list")public String test(@RequestParam(value="id") Long parentId) {..}這樣會用id 代替parentId 也就是說你地址里面?zhèn)魅氲膮?shù)名稱為id localhost:8080/list?id=? 這種
總結(jié)
以上是生活随笔為你收集整理的【springmvc】@RequestParam详解以及加与不加的区别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 工业用微型计算机笔记(2)-二进制有符号
- 下一篇: c++17(21)-volatile和c