码迷,mamicode.com
首页 > 其他好文 > 详细

MyBaits理解?

时间:2018-04-18 23:37:39      阅读:237      评论:0      收藏:0      [点我收藏+]

标签:支持   功能架构   测试   state   取出   ssi   注解   cto   实例   

(1)MyBaits是一个基于Java的持久层框架,支持普通或定制化SQL查询、存储过程以及高级映射,使用XML或注解来配置和映射信息。

(2)应用程序使用SQLSessionFactory实例,一个SQLSessionFactory实例可以通过SQLSessionFactoryBuilder获得。SQLSessionFactoryBuilder可以从一个xml配置文件或者一个预定义的配置类的实例获得。

(3)SQL写在xml里,便于统一管理和优化,解除SQL与程序代码的耦合,通过提供DAL层,将业务逻辑和数据访问逻辑分离,使系统的设计更清晰,更易维护,更易单元测试,提高了可维护性。

(4)提供映射标签,支持对象与数据库的orm字段关系映射,支持编写动态SQL,支持对象关系组建维护。

(5)总体流程:<1>加载配置并初始化<2>接收调用请求<3>处理操作请求<4>返回处理结果将最终的处理结果返回。

(6)处理过程:

    <1>根据SQL的ID查找对应的MappedStatement对象。

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

    <3>获取数据库连接,根据得到的最终SQL语句和执行传入参数到数据库执行,并得到执行结果。

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

     <5>释放连接资源。

(7)MyBatis的功能架构分为三层:

     <1>API接口层:提供给外部使用的接口API,开发人员通过这些本地API来操纵数据库。接口层接收到调用请求就会调用数据处理层来完成具体的数据处理。

     <2>数据处理层:负责具体的SQL查找、SQL解析、SQL执行和执行结果映射处理等。它主要的目的是根据调用的请求完成一次数据库操作。

     <3>基础支撑层:负责最基础的功能支撑,包括连接管理、事务管理、配置加载和缓存处理,这些都是共用的东西,将他们抽取出来作为最基础的组件。

MyBaits理解?

标签:支持   功能架构   测试   state   取出   ssi   注解   cto   实例   

原文地址:https://www.cnblogs.com/hongwei2085/p/8877994.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!