作者:飓哥
链接:https://www.zhihu.com/question/328810338/answer/2401851089
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

一、什么是SSM框架?

官方一点的话说:SSM框架集是Spring+SpringMVC+MyBatis的缩写,是由Spring、MyBatis两个开源框架整合而成(SpringMVC是Spring中的部分内容)。常作为数据源较简单的web项目的框架。用大白话说就是方便进行前后端开发的整合,更加适应企业级项目开发,能够减少代码量的轻量级框架。

下面我们对这三个组成做一个简单的介绍:

1、Spring

Spring就像是整个项目中装配bean的大工厂,在配置文件中可以指定使用特定的参数去调用实体类的构造方法来实例化对象。也可以称之为项目中的粘合剂。

通过Spring的IOC特性,可以将对象之间的依赖关系交给Spring控制,方便解耦,简化了开发。 通过Spring的AOP特性,很容易实现事务,日志,权限的控制。 同时Spring提供了对其他优秀开源框架的集成支持。 具体低侵入式的特点。

2、SpringMVC

SpringMVC在项目中拦截用户请求,它分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制。同时springMVC是使用了MVC设计思想的轻量级web框架,对web层进行解耦,使得我们开发更简洁。它还能与Spring无缝衔接。具备灵活的数据验证,格式化,数据绑定机制。

3、MyBatis

MyBatis作用于数据库持久层,是对jdbc的封装,它让数据库底层操作变的透明。mybatis的操作都是围绕一个sqlSessionFactory实例展开的。mybatis通过配置文件关联到各实体类的Mapper文件,Mapper文件中配置了每个类对数据库所需进行的sql语句映射。在每次与数据库交互时,通过sqlSessionFactory拿到一个sqlSession,再执行sql命令。