报错-Missing URI template variable 'xxx' for method parameter of type Long
起因
使用postman测试后端接口
{
"timestamp": "2020-11-18T11:28:51.219+0000",
"status": 500,
"error": "Internal Server Error",
"message": "Missing URI template variable 'xxx' for method parameter of type Long",
"path": "/spec/params"
}
服务器异常,出现“丢失long类型的方法参数的链接模板值xxx”错误
原因
使用了@PathVariable注解,但没有使用RestFul风格写法
解决方案
// @GetMapping("/params") 原写法
@GetMapping("/params/{xxx}")
梳理@RequestParma/@PathVariable
相同点
两者都可以获取参数,都可以设置参数是否为必填和默认值
不同点
@RequestParam是真的只能请求参数
@PathVariable是参数变量,用范围更宽广,可以使用正则,将url分割为参数,而不仅仅是获取请求中携带的参数,可以应用于url匹配例如项目中匹配不同url但是具有相同模式的服务接口
分类:
spring
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)