You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot中REST API的URL与参数命名规范咨询

Spring Boot REST API命名规范问题解答

问题1:URL使用kebab-case比camelCase更合适,是否属实?

属实。REST API的URL遵循Web领域通用规范,kebab-case(短横线分隔)是行业主流命名风格,像GitHub、Stripe等公开API都采用这种方式。它的优势很明确:

  • 可读性更强,短横线分隔的单词在URL里比camelCase更容易区分
  • 符合URL的语义习惯,Web服务器、代理对短横线的处理更友好,不会出现识别歧义
  • 能和代码里的变量命名(通常用camelCase)划清边界,避免混淆

问题2:URL中路径参数用camelCase,其余部分用kebab-case是否规范?

这种用法是规范的,也是行业常用实践。原因如下:

  • 路径参数本质是业务变量,和代码中的变量命名保持一致(Java变量默认用camelCase),在控制器方法里接收参数时可以直接用@PathVariable String customerId,不需要额外做名称映射,减少代码冗余
  • URL静态部分用kebab-case符合URL规范,两者各司其职,既保证了URL的可读性,又保持了代码变量的一致性

问题3:两个接口参数类型相同,无法用@GetMapping("/{userId}")和@GetMapping("/{referenceId}")映射,添加前缀是否为最佳实践?

添加资源前缀是非常推荐的最佳实践,也是REST资源导向设计的核心原则之一。

  • 这种方式能让URL语义更清晰,比如@GetMapping("/users/{userId}")和@GetMapping("/references/{referenceId}"),一眼就能区分是获取用户资源还是参考记录资源,从根源上避免路由冲突
  • 相比用请求参数(比如@GetMapping("/")配合?id=xxx或?reference=xxx)的方案,路径前缀的方式更符合REST的资源定位逻辑,可读性和可维护性更强
  • 还有利于后续API扩展,比如后续要加创建用户、创建参考记录的接口,直接沿用/users和/references的前缀即可,保持API风格统一

内容的提问来源于stack exchange,提问作者jonathan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 19:52:09