@RequestMapping(value = "/A/{nonEmptyParam1}", method = RequestMethod.GET)
public String queryA(@PathVariable String nonEmptyParam1,
@RequestParam(required = false) String param2,
@RequestParam(required = false) String param3,
@RequestParam(required = false) String param4{
...
此时get方法的path仅为/A/{nonEmptyParam1}
利用注解RequestParam(required = false)
**
但不推荐将参数藏在GET的body里, 还是建议使用POST方法。
使用时注解同上,只是不需要pathvariable
**
或者使用默认值(defaultValue 这个注解属性):
@RestController
public class HelloController {
@GetMapping("/hello")
public String hello(@RequestParam(name = "name", defaultValue = "xxx") String name) {
return "获取到的name是:" + name;
}
}
或者可以考虑入参直接采用Map的形式