Spring、Spring MVC 与 Spring Boot 有什么区别?
查看完整题解
参考回答
直接回答
Spring Framework 提供容器、依赖注入、事务等基础能力;Spring MVC 是其中基于 Servlet 的 Web 框架;Spring Boot 帮你组织依赖、启动、条件自动配置和运行管理。它们不是互相替代的三套语言。同一个应用可以用 Boot 启动、由 Spring 管对象,再由 MVC 接收 HTTP 请求。
讲清原理
Boot 减少常见组装工作,但并不实现每一项底层技术。自动配置最终也会注册普通 Spring Bean,业务对象仍按容器生命周期运行。MVC 则处理映射、参数与返回值,不负责代替所有业务规则。
Boot 也能运行命令行任务或响应式应用,不是使用它就必须启动 MVC 和 Tomcat。选依赖与应用类型时,要先确定目标,避免为了“完整”加入无关 Web 栈。
例子与易错点
例如离线报表可以只启动非 Web 容器,管理任务所需依赖;网站则再选择 MVC 等入口。出现注入错误要查容器配置,出现路由错误要查 Web 层,不能把所有问题都归为 Boot 启动失败。
相关题:第 6 题、第 7 题、第 9 题。
这道题,你掌握得怎么样?
掌握程度由你主动标记,阅读和收藏不会自动改变状态。