@RequestParam使用

发布于:2023-01-03 ⋅ 阅读:(271) ⋅ 点赞:(0)

@RequestParam使用

@RequestMapping("/list1")
public String test1(int userId) {
  return "list";
}
@RequestMapping("/list2")
public String test2(@RequestParam int userId) {
  return "list";
}

(1)不加@RequestParam前端的参数名需要和后端控制器的变量名保持一致才能生效

(2)不加@RequestParam参数为非必传,加@RequestParam写法参数为必传。但@RequestParam可以通过@RequestParam(required = false)设置为非必传。

(3)@RequestParam可以通过@RequestParam(“userId”)或者@RequestParam(value = “userId”)指定传入的参数名。

(4)@RequestParam可以通过@RequestParam(defaultValue = “0”)指定参数默认值

(5)如果接口除了前端调用还有后端RPC调用,则不能省略@RequestParam,否则RPC会找不到参数报错

(6)访问时:

  • 不加@RequestParam注解:url可带参数也可不带参数,输入 localhost:8080/list1 以及 localhost:8080/list1?userId=xxx 方法都能执行
  • 加@RequestParam注解:url必须带有参数。也就是说你直接输入localhost:8080/list2 会报错,不会执行方法。只能输入localhost:8080/list2?userId=xxx才能执行相应的方法

(7)前端页面如下两种写法:在url地址都会显示 localhost:8080/loan/loan?ptype=2 形式

<a th:href="@{loan/loan?ptype=1}">查看更多优选类产品</a>
<a th:href="@{loan/loan(ptype=2)}">查看更多散标类产品</a>

网站公告

今日签到

点亮在社区的每一天
去签到