Ibatis知识点总结

    xiaoxiao2024-07-25  9

    1,Ibatis的简介

    Ibatis的定义是作为一种DataMapper(一个映射层,在对象和数据库之间传递数据,并保持两者与映射层本身相独立,Mapper在两个独立对象间建立通信关系的一种对象)存在的。

    Ibatis通过SQL Map将Java对象映射成SQL语句和将结果再转化成Java对象。与其他ORM框架相比,即解决了Java对象与输入参数和结果集的映射(Java的反射机制),又能够让用户方便的手写使用SQL语句。Ibatis主要完成两件事情:

    1)       根据JDBC规范建立与数据库的连接。

    2)       通过反射打通Java对象与数据库参数交互之间的相互转化关系。

    2,Ibatis的解析过程

    Ibatis框架的一个重要组成部分就是SqlMap配置文件,SqlMap配置文件的核心是statement语句包括CRUD操作。Ibatis通过解析SqlMap配置文件得到所有的Statement执行语句,同时会形成ParameterMap和ResultMap两个对象用于处理参数和经过解析后交给数据库处理的Sql对象。

    数据的映射过程是这样的:

    根绝Statement中定义的SQL语句,解析出其中的参数,按照其出现的顺序保存在Map集合中,并按照Statement中定义的ParameterMap对象解析出参数的Java数据类型。并根据其数据类型构建TypeHandler对象,参数值的复制是通过DataExchange对象完成的。返回的ResultSet也通过DataExchange对象完成转化。

    3,Ibatis的主要特征

    1)    能够管理对象的持续性。JavaBean到数据表的映射,以对象的方式存储数据。O/R Mapping 的定义都是基于XML,具有很好的扩展性和通用性。

    2)    支持多种数据输入和输出类型。

    3)    支持静态SQL语言、参数SQL语言和动态SQL语言。

    4)    支持新增、修改、删除、查询和存储过程的操作。

    5)    支持显示事务和隐式事务,支持JDBC、JTA和容器事务。

    6)    允许用户使用定制的SQL来提高查询的性能,提供了多种SQL自动策略开关。

    7)    提供了灵活的Cache缓冲机制,以及延迟加载、复合查询的策略,保证一般应用的性能不会低于相应的数据集应用。

    8)    使用Ibatis框架可以实现数据库平台的无关性,可以随时切换开关以及数据发布平台,方便移植。

    4 Ibatis的SQL MAP执行逻辑

    1)       配置SQL Map配置文件,载入JDBC驱动程序和数据库连接(包括事务管理模式和DataSource模式)等信息。

    2)       配置SQL Map映射文件,包括ParameterMap、ResultMap、SQL等信息,其中ParameterMap是输入参数部分,resultMap是输出结果部分,SQL是SQL语句部分。

    3)       根据SQL Map配置文件配置信息,加载配置的JDBC驱动程序。

    4)       根据SQL Map配置文件,建立数据库连接。

    5)       根据SQL Map映射文件中的SQL信息和ParameterMap信息,建立符合JDBC规范的SQL语句和输入参数。

    6)       执行SQL语句。

    7)       处理结果集,把数据库结果转化为SQL Map映射文件的resultMap格式内容

    8)       关闭数据库连接。

     

    转载请注明原文地址: https://ju.6miu.com/read-1291011.html
    最新回复(0)