一、@PathVariable注解解释

1.@PathVariable映射url绑定的占位符,是springboot3.0后新增的功能,有点类型REST风格的味道了。
2.通过@PathVariable可以将url中占位符参数绑定到控制器处理方法的入参中。

二、代码示例:

1、只传递一个参数

@GetMapping(value = "/test/{name}")
public String parseTemplateAdd(@PathVariable String name){
    System.out.println("通过pathVariable传入的参数为"+name);
    return name;
}

2、实现有参数和无参数同时访问

@GetMapping(value = "/test/{name}","/test"})
public String parseTemplateAdd(@PathVariable(required = false) String name){
    System.out.println("通过pathVariable传入的参数为"+name);
    return name;
}

查看@GetMapping源代码发现value是个数组,这说明value可以是多个值,也就是说@GetMapping可以设置多个接口.

而在@PathVariable的源代码中可以发现,其中有一个required属性,默认是true,也就是说whCode是必须的,如果希望接受值可以为空,就必须手动设置为false

3、传递两个或多个参数

@GetMapping(value = "/test/{name}/{age}")
public String parseTemplateAdd(@PathVariable String name,
								@PathVariable String age){
    System.out.println("通过pathVariable传入的第一个参数为"+name+"第二个参数"+age);
    return name;
}

两个参数直接使用 / 分割开 在用多个@PathVariable 从中取值,多个参数就在后面重复操作

请求接口的地址 http://ip:端口/test/张三/男