SSM原理,简要分析(仅供个人参考)

1.作用

SSM框架是spring MVCspringmybatis框架的整合,是标准的MVC模式,将整个系统划分为表现层controller层service层DAO层四层。

使用spring MVC负责请求的转发和视图管理,spring实现业务对象管理,mybatis作为数据对象的持久化引擎。

2.原理

2.1 SpringMVC

用户发送请求,dispatcherServlet调用处理器映射器寻找处理请求的handler,返回handler的执行链,dispatcherservlet请求调用handler处理请求,handler适配器找到handler,即controller,controller使用请求的内容,调用service业务方法进行处理,service方法又调用mapper对数据库进行操作,返回操作结果给controller,controller封装成modelandView返回给dispatcherServlet,dispatcherServlet将modelandview传给视图解析器,,视图解析器返回真正的view,通过渲染视图,将数据填充到request域,以网页的形式展现给用户;

 

2.2Mybatis

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

 

sqlMapConfig.xml(mybatis的全局配置文件,名称不固定)配置了数据源,事务等运行环境,配置映射文件,mapper.xml

sqlSeesionFactory(会话工厂),根据配置文件创建工厂作用:创建sqlSession,

mysql

sqlsession(会话)

作用:操作数据库(sql的crud操作)

Executor(执行器)也是一个接口(基本执行器,缓存执行器)作用:sqlsession是通过执行器来操作数据库的

mapped statement(底层封装对象)

作用:对操作数据库存储封装,包括sql语句、输入参数、输入结果类型

输入参数类型

java简单类

hashmap

pojo自定义类型

输出结果类型

 

java简单类

hashmap

 

pojo自定义类型

全局配置文件里面配置了数据源,事务,扫描别名等运行环境;然后配置pojo对应的映射mapper文件,sqlSessionFactory会根据mapper的xml配置文件,创建对应的sqlSession,sqlSession通过执行器来操作数据库,mapperstatement封装了一些sql需要传入的参数和sql语句,通过执行器获取数据库中的结果集。

过程:定义pojo对象,属性,生成对应的set和get方法;书写Mapper.xml,定义增删改查功能;书写mapper.java接口文件,定义接口方法,与mapper.xml定义的方法保持一致;书写service文件,为controller服务,接受controller的参数,将结果返回给controller;书写controller,连接页面请求和后台,获取页面参数,对参数进行处理后传给service的方法。

书写jsp页面,请求哪些参数,获取哪些数据。

2.3 Spring

我们平时开发接触最多的估计就是IOC容器,它可以装载bean(也就是我们Java中的类,当然也包括service dao里面的),有了这个机制,我们就不用在每次使用这个类的时候为它初始化,很少看到关键字new。另外spring的aop,事务管理等等都是我们经常用到的。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

猜你喜欢

转载自blog.csdn.net/huangwei18351/article/details/82526511