1. http://localhost:8080/users?name="
- 方式一:通过
HttpServletRequest
获取参数
public void func(HttpServletRequest request){
String nameStr = request.getParameter("name");
System.out.println("姓名:" + name);
}
- 方式二:通过
@RequestParam
获取参数
public void func(@RequestParam(value = "name",required = false) String name){
System.out.println("姓名:" + name);
}
注意:如果required为true,则没有传递请求参数会报错,required默认为true,可以不写。不需要required,可以在参数栏只写要传递的参数即可
- 如果@RequestParam中的参数名称与该方法的形参名称相同,可以省略不写,即
public void func(String name){
System.out.println("姓名:" + name);
}
2. 使用json传递数据
- 使用
@RequestBody
后面加上一个对象。对象的属性名必须包含该json的key值
public void func(@RequestBody User user){
System.out.println("姓名:" + user.name);
}
3. http://localhost:8080/users/{name}
{name}
是一个占位符,比如http://localhost:8080/users/joker
- 使用
@PathVariable
public void func(@PathVariable("name") String name){
System.out.println("姓名:" + name);
}
- 与@RequestParam相同,如果其中的参数名称与该方法的形参名称相同,可以省略
()
内容不写,即:
public void func(@PathVariable String name){
System.out.println("姓名:" + name);
}