十、Spring、SpringMVC、SpringBoot区别
1、Spring
Spring是一个企业级开源框架,一个IOC和AOP的容器框架。Spring可以将简单的各个组件通过配置组合成一个复杂的应用。在Spring中通常在XML文件里进行各种bean的配置,Spring通过IOC容器对这些Bean进行管理。Spring框架为开发Java应用程序提供了全面的基础架构支持。它包含一些很好的功能如:Spring JDBC 、Spring MVC 、Spring Security、 Spring AOP 、Spring ORM 、Spring Test,这些模块缩短应用程序的开发时间,提高了应用开发的效率。例如,在Java Web开发的早期阶段,我们需要编写大量的重复代码来将记录插入到数据源中。但是通过使用Spring JDBC模块的JDBCTemplate,我们可以将它简化为只需几个简单配置或者几行代码。
2、SpringMVC
SpringMVC是基于Spring功能之上添加的Web框架,SpringMVC依赖Spring。是属于SpringWeb里面的一个功能模块(SpringWebMVC),专门用来开发SpringWeb项目的一种MVC模式的技术框架实现。主要处理Web开发的路径映射和视图渲染等工作。用以替代初期的SSH框架,相当于是Struts2 + Spring的整合,Spring MVC的执行效率比Struts高。Spring Framework本身没有Web功能,Spring MVC通过DispatcherServlet、ModelAndView和View Resolverd等使开发web应用变得更简单。
3、SpringBoot
SpringBoot基本上是Spring框架的扩展,其设计目的是用来简化Spring应用的初始搭建以及开发过程,遵循“约定大于配置”。它消除了设置Spring应用程序所需的复杂XML配置,例如:web.xml、加载Spring和SpringMVC配置、数据库连接配置、Spring事务配置。可以更快,更高效的开发应用程序。通过starter这一个依赖,以简化构建和复杂的应用程序配置。嵌入Tomcat避免了应用程序部署的复杂性,可以直接通过main函数启动。SpringBoot不是Spring的替代者,Spring框架是通过IOC容器来管理Bean。