Spring RestMapping配置疑问:如何让/subpoint1继承/endpoint1路径为/endpoint1/subpoint1
Spring REST 端点路径配置调整方案
直接通过类级别+方法级别的@RestMapping组合就能实现你的需求,具体操作如下:
- 在控制器类上添加
@RestMapping("/endpoint1"),定义该类下所有方法的基础路径 - 将原
@RestMapping("/endpoint1/subpoint1")的方法,修改为@RestMapping("/subpoint1")(或不带开头斜杠的@RestMapping("subpoint1"),Spring会自动处理路径拼接) - 保留原
@RestMapping("/endpoint1")的方法,去掉路径参数(或指定空路径),直接继承类的基础路径
完整示例代码
@RestController @RestMapping("/endpoint1") // 类级别基础路径 public class DemoController { // 访问路径:/endpoint1 @GetMapping public String handleEndpoint1() { return "Endpoint1 Response"; } // 访问路径:/endpoint1/subpoint1 @GetMapping("/subpoint1") public String handleSubpoint1() { return "Subpoint1 Response"; } }
关键说明
- Spring会自动将类级别的
@RestMapping路径与方法级别的路径拼接,无需手动拼接完整路径 - 方法上的路径带不带开头的斜杠
/不影响最终拼接结果,Spring内部会做统一处理 - 确保控制器类标注了
@RestController(等价于@Controller + @ResponseBody),才能正确返回REST响应
内容的提问来源于stack exchange,提问作者ca55idy
相关产品推荐
相关产品推荐

