Spring Boot中@GetMapping未生效的常见原因及解决方案
发布时间 - 2026-02-02 00:00:00 点击率:次spring boot中@getmapping未生效的常见原因及解决方案
在 Spring Boot 中,@GetMapping 注解本身不会自动绑定到浏览器直接访问的根路径 / —— 这是初学者最容易误解的关键点。你当前的代码:
@GetMapping public Listhello() { ... }
看似“无参”@GetMapping 应该响应 http://localhost:8080/,但实际上 @GetMap 
✅ 正确做法:显式声明路径,并通过匹配的 URL 访问
修改你的 @GetMapping 为带路径的版本,例如:
@GetMapping("/students")
public List getAllStudents() {
return List.of(
new Student(
1L,
"Mariam",
"[email protected]",
LocalDate.of(2000, Month.JANUARY, 5),
21
)
);
} 然后在浏览器中访问:
? http://localhost:8080/students
此时 Spring MVC 才会正确路由到该方法,并以 JSON 格式返回学生列表(前提是项目已引入 spring-boot-starter-web 且 Jackson 依赖可用)。
⚠️ 其他关键注意事项:
包结构与组件扫描:确保 Demo2Application 类位于最外层包(如 com.example.demo),而 Student 类位于子包(如 com.example.demo.Student)。Spring Boot 默认只扫描启动类所在包及其子包。你当前的 @SpringBootApplication 和 @RestController 合并在一个类上虽可运行,但建议分离关注点:将 @RestController 移至独立的 Controller 类(如 StudentController),放在 com.example.demo.controller 包下,更符合规范。
-
Student 类的序列化支持:LocalDate 默认可被 Jackson 序列化(Spring Boot 2.2+ 内置 jackson-datatype-jsr310),但请确认 pom.xml 中包含:
org.springframework.boot spring-boot-starter-web✅ 该 starter 已自动引入 Jackson 和 JSR-310 支持,无需额外配置。
避免路径冲突与隐式覆盖:不要将 @GetMapping 留空或设为 "/",尤其当项目后续添加 index.html、favicon.ico 或 Actuator 端点时,极易引发路由冲突。
? 补充调试技巧:
- 启动后查看控制台日志中的 Mapped "{[/students],methods=[GET]}" 日志行,确认端点是否成功注册;
- 使用 curl -v http://localhost:8080/students 或 Postman 测试,排除浏览器缓存或重定向干扰;
- 若仍报错,检查 application.properties 是否误配了 server.servlet.context-path 或 spring.mvc.servlet.path。
总结:@GetMapping 必须配合明确、唯一、未被占用的路径使用;根路径 / 属于保留区域,切勿用于业务接口。遵循 RESTful 命名惯例(如 /api/v1/students)不仅解决当前问题,也为后续扩展打下坚实基础。
# html
# js
# json
# 处理器
# 浏览器
# app
# curl
# ai
# 路由
# springboot
# spring mvc
# mvc
# spring
# spring boot
# restful
# postman
# servlet
# xml
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Windows11怎样设置电源计划_Windows11电源计划调整攻略【指南】
详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)
Laravel Eloquent模型如何创建_Laravel ORM基础之Model创建与使用教程
php json中文编码为null的解决办法
香港服务器建站指南:免备案优势与SEO优化技巧全解析
企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?
猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?
阿里云高弹*务器配置方案|支持分布式架构与多节点部署
如何用腾讯建站主机快速创建免费网站?
如何基于PHP生成高效IDC网络公司建站源码?
Python高阶函数应用_函数作为参数说明【指导】
php结合redis实现高并发下的抢购、秒杀功能的实例
如何在腾讯云服务器上快速搭建个人网站?
广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?
如何在建站之星网店版论坛获取技术支持?
Windows10如何更改计算机工作组_Win10系统属性修改Workgroup
香港服务器选型指南:免备案配置与高效建站方案解析
品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?
如何在IIS管理器中快速创建并配置网站?
EditPlus中的正则表达式 实战(2)
软银砸40亿美元收购DigitalBridge 强化AI资料中心布局
JavaScript实现Fly Bird小游戏
Linux后台任务运行方法_nohup与&使用技巧【技巧】
网站图片在线制作软件,怎么在图片上做链接?
西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?
米侠浏览器网页背景异常怎么办 米侠显示修复
如何正确下载安装西数主机建站助手?
详解免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)
Laravel如何配置.env文件管理环境变量_Laravel环境变量使用与安全管理
成都网站制作公司哪家好,四川省职工服务网是做什么用?
ai格式如何转html_将AI设计稿转换为HTML页面流程【页面】
如何快速搭建支持数据库操作的智能建站平台?
如何在景安云服务器上绑定域名并配置虚拟主机?
Laravel怎么配置不同环境的数据库_Laravel本地测试与生产环境动态切换【方法】
如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南
Laravel如何生成和使用数据填充?(Seeder和Factory示例)
php增删改查怎么学_零基础入门php数据库操作必知基础【教程】
高防服务器租用首荐平台,企业级优惠套餐快速部署
Laravel如何记录日志_Laravel Logging系统配置与自定义日志通道
使用spring连接及操作mongodb3.0实例
详解Android图表 MPAndroidChart折线图
如何用美橙互联一键搭建多站合一网站?
香港服务器租用费用高吗?如何避免常见误区?
阿里云网站搭建费用解析:服务器价格与建站成本优化指南
弹幕视频网站制作教程下载,弹幕视频网站是什么意思?
黑客如何通过漏洞一步步攻陷网站服务器?
javascript中的数组方法有哪些_如何利用数组方法简化数据处理
如何在万网自助建站中设置域名及备案?
Laravel如何实现RSS订阅源功能_Laravel动态生成网站XML格式订阅内容【教程】
Laravel如何使用Eloquent进行子查询

