SSM框架是spring MVC,Spring和mybatis框架的整合,是标准的MVC模式,将整个系统划分为表现层,controller层,service层,DAO层四层,使用spring MVC负责请求的转发和视图管理,spring实现业务对象管理,mybatis作为数据对象的持久化引擎。
原理SpringMVC1.客户端发送请求到DispacherServlet(分发器)
2.由DispacherServlet控制器查询HanderMapping,找到处理请求的Controller
3.Controller调用业务逻辑处理后,返回ModelAndView
4.DispacherSerclet查询视图解析器,找到ModelAndView指定的视图
5.视图负责将结果显示到客户端
Spring
我们平时开发接触最多的估计就是IOC容器,它可以装载bean(也就是我们Java中的类,当然也包括service dao里面的),有了这个机制,我们就不用在每次使用这个类的时候为它初始化,很少看到关键字new。另外spring的aop,事务管理等等都是我们经常用到的。
Mybatismybatis是对jdbc的封装,它让数据库底层操作变的透明。mybatis的操作都是围绕一个sqlSessionFactory实例展开的。mybatis通过配置文件关联到各实体类的Mapper文件,Mapper文件中配置了每个类对数据库所需进行的sql语句映射。在每次与数据库交互时,通过sqlSessionFactory拿到一个sqlSession,再执行sql命令。
SSM整合思路spring在进行管理时,是很有条理的,每个层都由spring管理,然后不同的层可以调用其它层,Handler调用service,service调用mapper等。
1. 整合dao层。mybatis和spring整合,通过spring管理mapper接口。使用mapper的扫描器自动扫描mapper接口在spring中进行注册。
2. 整合service层。通过spring管理 service接口。使用配置方式将service接口配置在spring配置文件中。实现事务控制。
3. 整合springmvc。由于springmvc是spring的模块,不需要整合。
要完成一个功能:
- 先写实体类entity,定义对象的属性,(可以参照数据库中表的字段来设置,数据库的设计应该在所有编码开始之前)。
- 写Mapper.xml(Mybatis),其中定义你的功能,对应要对数据库进行的那些操作,比如insert、selectAll、selectByKey、delete、update等。
- 写Mapper.java,将Mapper.xml中的操作按照id映射成Java函数。
- 写Service.java,为控制层提供服务,接受控制层的参数,完成相应的功能,并返回给控制层。
- 写Controller.java,连接页面请求和服务层,获取页面请求的参数,通过自动装配,映射不同的URL到相应的处理函数,并获取参数,对参数进行处理,之后传给服务层。
- 写JSP页面调用,请求哪些参数,需要获取什么数据。
DataBase ===> Entity ===> Mapper.xml ===> Mapper.Java ===> Service.java ===> Controller.java ===> Jsp.
初学者学习SSM框架,可以去看视频教程,推荐动力节点王鹤老师讲的SSM框架,细到极致,小白学准没错,内容介绍了SSM框架的使用及运用的整理整合,基本涵盖了工作当中所需要的所用知识点。
SSM框架入门到精通教程
https://www.bilibili.com/video/BV1Ug4y1i7W7
SSM框架资料下载
http://www.bjpowernode.com/?toutiao
,