spring是⼀个IOC容器,⽤来管理Bean,使⽤依赖注⼊实现控制反转,可以很⽅便的整合各种框架,提供AOP机制弥补OOP的代码重复问题、更⽅便将不同类不同⽅法中的共同处理抽取成切⾯、⾃动注⼊给⽅法执⾏,⽐如⽇志、异常等
springmvc是spring对web框架的⼀个解决⽅案,提供了⼀个总的前端控制器Servlet,⽤来接收请求, 然后定义了⼀套路由策略(url到handle的映射)及适配执⾏handle,将handle结果使⽤视图解析技术⽣成视图展现给前端
springboot是spring提供的⼀个快速开发⼯具包,让程序员能更⽅便、更快速的开发spring+springmvc 应⽤,简化了配置(约定了默认配置),整合了⼀系列的解决⽅案(starter机制)、redis、 mongodb、es,可以开箱即⽤
这仨经常让人搞混,尤其是初学者。面试的时候你不仅要能区别它们的概念,还要能从源码层面、功能定位、应用场景和它们之间的依赖关系说清楚。
名称 | 一句话解释 |
---|---|
Spring | 是一套大框架的基础内核,提供了 IOC、AOP、Bean 容器等能力 |
Spring MVC | 是 Spring 的一个 Web 模块,专门处理 Web 请求,属于 Spring 的子模块 |
Spring Boot | 是用来“快速构建 Spring 项目的工具箱”,简化配置、自动装配,能一键启动整个应用 |
[ Spri