筆者在看開源項(xiàng)目的時候,在Controller層上有很多地方用到了@RequestParam注解,于是上網(wǎng)了解了下,也簡單的做了下筆記
SpringMVC的Controller層獲取前臺參數(shù)主要有兩種方式:
1、 request.getParameter(“name”);
2、 用@RequestParam注釋,如下
public void login(
@RequestParam(value = "username") String username,
@RequestParam(value = "password") String password
)
@RequestParam 有三個常用參數(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
)
需要注意的幾個點(diǎn):
1、@RequestParam(value = "username") 如果前端傳的參數(shù)名不是username的話,會報錯
2、通過required=false or true ,指定該參數(shù)是否必須要傳,如果為true,則該參數(shù)必須傳;如果為false, 則可以不傳,會默認(rèn)賦值為null
3、如果注解的類型是int的話,就算設(shè)置了required=false,不傳參數(shù)會報錯,因?yàn)闀J(rèn)給int類型賦值null