SSM框架是一种后端框架,由三部分组成,与后端的三层架构相对应。
SSM:SpringMVC+Spring+Mybatis
三层架构:控制层、业务逻辑层(服务层)、数据访问层(持久层)
SpringMVC框架封装了控制层
Spring框架封装了服务层
Mybatis框架封装了持久层
在一个功能的实现层次里来看:
三层架构来说,正常流程是页面发送一个请求到控制层,控制层里调用服务层,服务层里调用持久层,持久层通过sql语句进行数据操作(crud),然后一层一层的将结果返回到页面,这就是一个功能从开始到结束的完整流程,就算花样再多,本质的东西是不会变的,所以对于框架的学习来说,在你熟练掌握了三层架构之后,掌握框架原理是很简单的,麻烦的知识记住框架怎么用就可以了。
~~自我理解,我觉得框架本质上就是对相应部分的代码进行了封装,用另一种比较简洁的方式来描述业务逻辑,例如Mybatis,之前原生的持久层代码每写一个功能就要获取连接,然后写sql语句,放入参数,取得结果,而Mybatis封装了持久层之后,只需要通过几个配置文件就可以搭建完持久层的大体逻辑,你要做的就是写好对应的功能接口、然后在配置文件里写sql语句就可以了(框架搭建有两种方式:注解和配置文件,我习惯于使用配置文件),其实Mybatis框架就是帮我们封装了很多通用的代码,但是持久层的本质没有改变,只是简化了开发,降低了耦合度,使用人家的框架只需要按照人家规定的格式写上必要的东西就可以了,相比之前手敲很多行代码实现一个功能来说,只通过几个配置,几个注解就能实现功能的框架无疑更加的简单,或许刚开始学你会觉得配置文件啥的很难写,各种的配置文件很繁琐之类的不爽,但是你可以思考一个现实的问题,第一,公司做项目需要用框架去开发,这点很重要,你必须得掌握;第二,如果你要写一个项目,这个项目包含1000个功能,你原生的写得写多少行代码,得敲到啥时候;第三,有简单的东西干嘛非要用复杂的东西???
SpringMVC主要是对控制层的请求和相应进行了封装,重点在怎样接收页面传过来的参数以及如何将操作完的结果数据返回到页面上。
Spring主要就是IOC(控制反转)和AOP(面向切面),控制反转理解:之前我们创建对象是通过new关键字去创建对象,而Spring框架通过构件对象工厂,可以自动帮我们创建对象,控制反转的字面理解就是我们对对象的创建的控制权限交给了IOC容器去管理,控制权转手了。AOP的话本人能理解,但是表述不好,就不说了。
Mybatis关键的地方就是在映射上,在这个框架里你需要有一个持久层接口,里边写着各种增删查改的抽象方法,然后你需要有一个特殊的xml配置文件,每个接口对应一个这种的xml文件,在这个配置文件里通过全类名来映射到对应的持久层接口,然后在xml文件里写的是抽象方法对应的sql语句,当然其中还有很多其他属性啥的,就不说了
基于SpringIOC的特性,三个框架整合是以Spring为核心来整合的
如果你是打算学SSM框架的话,建议去b站上找相应的视频学学看看,也可以去框架各自的官网通过文档来学习,这样你能有一个全面的了解
ssm整合完毕后的配置文件
链接:https://pan.baidu.com/s/18MAxa1LnRH27R3AAXxKZNg
提取码:db6x