筆者在看開源項(xiàng)目的時(shí)候,在Controller層上有很多地方用到了@RequestParam注解,于是上網(wǎng)了解了下痹仙,也簡單的做了下筆記
SpringMVC的Controller層獲取前臺(tái)參數(shù)主要有兩種方式:
1、 request.getParameter(“name”);
2、 用@RequestParam注釋,如下
public void login(
@RequestParam(value = "username") String username,
@RequestParam(value = "password") String password
)
@RequestParam 有三個(gè)常用參數(shù)
defaultValue = "0",
required = false,
value = "isApp"寸莫;
defaultValue 表示設(shè)置默認(rèn)值,
required 通過boolean設(shè)置是否是必須要傳入的參數(shù)档冬,默認(rèn)是false
value 值表示接受的傳入的參數(shù)類型膘茎。
public void login(
@RequestParam(value = "username",required = true) String username,
@RequestParam(value = "password",required = false) String password
)
需要注意的幾個(gè)點(diǎn):
1桃纯、@RequestParam(value = "username") 如果前端傳的參數(shù)名不是username的話,會(huì)報(bào)錯(cuò)
2披坏、通過required=false or true ,指定該參數(shù)是否必須要傳,如果為true,則該參數(shù)必須傳;如果為false, 則可以不傳态坦,會(huì)默認(rèn)賦值為null
3、如果注解的類型是int的話棒拂,就算設(shè)置了required=false伞梯,不傳參數(shù)會(huì)報(bào)錯(cuò),因?yàn)闀?huì)默認(rèn)給int類型賦值null