1.Spring体系结构
图解:
注解
Data Access/Integration:持久层 是Spring对数据持久化、事务管理的支持。SpringDataJpa就是其中的一种
Web:表现层 是Spring对表现层数据的处理部分的支持。SpirngMVC就是其中的一种
中间的两部分 是Spring框架的核心功能
Test:测试层 是Spring对项目提供的一个完整测试环境
2.什么是SSM
SSM是Spring+SpringMVC+MyBatis的缩写,继SSH之后,目前比较主流的Java EE企业级框架,适用于搭建各种大型的企业级应用系统。
由Spring、MyBatis两个开源框架整合而成(SpringMVC是Spring中的部分内容)。常作为数据源较简单的web项目的框架。
2.1SSM与SSH,Spring Boot的区别
SSM是Spring+SpringMVC+MyBatis的缩写
SSH是Spring+Struts2+Hibernate的缩写
Spring Boot是提供的全新框架,使用来简化Spring的初始搭建和开发过程,使用了特定的方式来进行配置,
让开发人员不在需要定义样板化的配置。此框架不需要配置xml,依赖于想MAVEN这样的构建系统。
3.Spring的框架的核心
IOC(控制反转)
IOC是一种设计模式,将实例化对象的控制权由手动生成的new变成了Spring框架通过反射机制实例化,并将对象的实例存入在容器种进行管理
DI(依赖注入)的关系
将对象实例化的操作交由Spring框架,降低了程序的耦合,不需手动new一个对象
面向切面编程(AOP)
在整个方法中(球体)运用一个切面对方法进行增加功能,不改变源代码,对原有的方法做增强
例如:转账的方法中,可运用切面对转账进行一个权限、日志、是否转账成功的功能增加,而被监测的执行方法叫切入点
4.总结他们的优势
(1)方便解耦,简化开发
Spring就是一个大工厂,可以将所有对象创建和依赖的关系维护,交给Spring管理。
(2)AOP编程的支持
Spring提供面向切面编程,可以方便的实现对程序进行权限拦截、运行监控等功能。
(3)声明式事务的支持
只需要通过配置就可以完成对事务的管理,而无需手动编程。
(4)方便程序的测试
Spring对Junit4支持,可以通过注解方便的测试Spring程序。
(5)方便集成各种优秀框架
Spring不排斥各种优秀的开源框架,其内部提供了对各种优秀框架的直接支持(如:Struts、Hibernate、MyBatis等)。
(6)降低JavaEE API的使用难度
Spring对JavaEE开发中非常难用的一些API(JDBC、JavaMail、远程调用等),都提供了封装,使这些API应用难度大大降低。
原文链接:https://gengrui01.github.io/article/20210222.html