Spring、SpringMVC与SpringBoot的区别
– Spring
是所有Spring应用的基础,通过Spring提供的IOC控制反转和AOP面向切面编程特性,可以轻松的对对象进行管理
– SpringMVC
是Spring的子项目,用于提供Web支持,作用是替代传统J2EE中的Servlet,可以提升web应用程序的兼容性和可维护性
在底层,SpringMVC的Controller也是要被Spring IOC容器管理的;SpringMVC的拦截器使用了AOP的特性,对Controller的行为进行扩展和控制
– SpringBoot
是Spring体系的敏捷开发框架,提高了程序的开发效率
它使用一套市场上最优的默认模板,来对Spring进行自动化配置和处理。其底层基于Spring和SpringMVC,并在此基础上额外的拓展了使用的功能,和默认配置模板。只需要简单地配置就可以实现Spring、SpringMVC的复杂功能
Spring机构最主要的项目:
-
Spring Boot是目前Spring结构最顶级的项目,它是一个敏捷开发框架,用于简化基于Java的应用程序开发
-
Spring Framework是整个Spring的基础所在,所有的Spring项目都是以Spring Framework框架为基础的
-
Spring Cloud对于分布式架构和微服务提供了良好的支持,是一整套完整的分布式解决方案
-
Spring Data用于简化和处理关系型数据库、非关系型数据库、大数据等数据源进行交互的。Spring Data提供了统一的接口,通过操作一组API底层就可以对MySql和Oracle,以及Hbase这样的NoSql数据库进行操作
-
Spring Batch用于高效率的批处理任务。如数据的批量导入,脚本批量执行
-
Sprintg Security是行业中最著名的一款安全框架,系统中的登录验证、权限验证等通过它来完成
-
Spring AMQP用于对消息队列进行支持,为市面上的消息队列产品提供了统一的接口,自动进行适配,从而简化了对于MQ消息队列产品的开发
-
Spring Mobile用于手机开发,提供了响应式布局,和一些与移动web应用相关的开发特性
发表回复