Mybatis初学一

来源:互联网 发布:17173剑灵捏脸数据库 编辑:程序博客网 时间:2024/06/06 01:11

Mybatis是一款一流的支持自定义SQL、存储过程和高级映射的持久化框架。Mybatis几乎消除了所有的JDBC代码。也基本不需要手工去设置参数和获取检索结果。Mybatis能够使用简单的XML格式或者注解来进行配置,能够映射基本数据元素、Map接口和POJOs到数据库中的记录。


每个Mybatis应用程序主要使用SqlSessionFactory的实例,SqlSessionFactory的实例可以通过SqlSessionFactoryBuilder来获得。SqlSessionFactoryBuilder可以从一个XML配置文件或者一个预先定义的配置类来获取到。


Mybatis的工作流程:

(1)加载配置文件并且初始化

触发条件:加载配置文件

配置文件来源于两个地方,一处是配置文件,一处是java代码注解,将SQL的配置信息加载成一个个的MappedStatement对象,存储在内存当中。

(2)接收调用请求

触发条件:调用Mybatis提供的API

传入参数:SQL的ID和传入参数对象

处理过程:将请求传递给下层的处理层进行处理

(3)处理操作请求

触发条件:API接口层传递请求过来

传入参数:SQL的ID和传入参数对象

处理过程:

A:根据SQL的ID查找对应的MappedStatement对象。

B:根据传入参数对象解析MappedStatement对象,得到最终要执行的SQL和执行传入参数。

C:获取数据库链接,根据得到的最终SQL和执行传入参数到数据库执行,并得到执行结果。

D:根据MappedStatement对象中的结果映射配置对得到的执行结果进行转换处理,并得到最终的处理结果。

E:释放连接资源

(4)将最终的处理结果返回


Mybatis的功能架构可以分为三层:

(1)API接口层

接口层负责提供结构供开发人员调用,接口层一旦接收到外部的调用请求就会调用数据处理层来完成具体的数据处理。

(2)数据处理层

负责具体的SQL查找、解析、执行和结果映射等处理。、

(3)基础支撑层

负责最基础的功能支撑,包括连接管理、事务管理、配置加载和缓存管理,这些都是共有的东西。




0 0