@PathVariable与@RequestParam

@Request与@PathVariable注解的作用都是从前端获取传递到后台的参数值

  • @PathVariable:从URI中获取参数值
  • @Request:从request中获取参数值

实例

示例URL

http://localhost:8060/studySSM/admin/admin/reset/4?userType=1

通过以下代码从URL中获取参数

@RequestMapping("/reset/{id}")
public String resetPwd(...,
        @PathVariable(value="id") int uid,
        @RequestParam(value="userType", required=false) int type,
         ...) {
    System.out.println("uid:"+ uid + " userType:" + type);
    //打印输出 uid:4 userType:1
    return "";
}

仔细阅读以上代码,就能很容易发现参数的对应关系。

@request的require属性

require属性的作用是,要求前端是否必须传入该参数值(默认true)

  • 前端传值

    • 正常处理
  • 前端未传值

    • require=false,示例中的type参数值会被设置为null(此时就需要小心参数所使用的数值类型,如int、double等,不允许为null,会产生异常)。
    • require=true,页面产生400错误(请求无效,要求传入userType参数)。

猜你喜欢

转载自blog.csdn.net/qq_34802416/article/details/81700948