方式一
当父类 BaseController 为不是bean时,父类暴露的@RequestMapping 方法允许被重写
public class BaseController {
@GetMapping("/test")
public String test(){
return "父类默认";
}
}
@RestController
public class TestController extends BaseController {
@GetMapping("/test1")
public String test() {
return "子类重写";
}
}
其规则如下
- 当 BaseController 未被子类继承时,所有接口均不生效
- 当 BaseController被子类继承,接口生效,未重写时,使用BaseController 中test方法实现
- 当 BaseController被子类继承重写时,使用 子类方法实现
- 当 BaseController被子类继承重写并且修改了Mapping,父类Mapping失效,使用子类Mapping
网友评论