问题描述
有时候我们想在一个请求中传入两种参数来实现不同的逻辑处理,我们可以像下面这样处理。
解决办法
1、首先在请求中写两种参数
2、在方法体的参数中,将不是必须的参数用required = false标记
3、方法中进行不同的处理
样例代码
/** * 1、传入id -> 直接删除id * 2、传入id和nid -> 先把id下的内容移动到nid再删除id * @param id * @param nid * @return */ @DeleteMapping( "{/{id},/{id}/{nid}}") @Operation(summary = "根据id删除") public R<Boolean> removeByIdTest(@PathVariable String id,@PathVariable(required = false) String nid) { if(null == nid){ //执行参数只有id的逻辑 return ... }else{ //执行参数有id和nid的逻辑 return ... } }