Ibatis原理分析

  1. Ibatis框架架构如下图所示:

 

     外部Java Application调用SqlMapClient接口,经过SqlMapSession、SqlMapExecutorDelegate等实现类,通过PersistentObject、ParameterMap、ResultMap、

MappedStatement、Transaction等,基于JDBC、JTA等事务操作,最后调用SqlExecutor操作类对数据库进行操作

   SQL Map框架可以专门用于O/R映射,O/R映射是JavaBean对象到数据库中关系表的映射。SQL Map框架使用XML描述符将JavaBean映射到SQL语言,执行SQL

并将结果映射返回对象,其核心功能是围绕MappedStatement进行的。

   在实现O/R时,通常是通过配置SqlMapConfig.xml来定义总体变量、事务管理模式、连接数据库信息,同时,指定包含MappedStatements,ResultMap、ParameterMap的映射文件位置等内容,然后通过SQL Map API 将JavaBeans对象映射到PreparedStatement参数和ResultSet,并完成持久化操作

 

  SQL Map提供了一个简洁的框架,使用简单的XML描述文件将Java Bean,Map实现和基本数据类型的包装类(String,Integer等)映射成JDBC的PreparedStatement。以下流程描述了SQL Maps的高层生命周期:
将一个对象作为参数(对象可以是Java Bean,Map实现和基本类型的包装类),参数对象将为SQL修改语句和查询语句设定参数值。


    1) 执行mapped statement。这是SQL Maps最重要的步骤。SQL Map框架将创建一个PreparedStatement实例,用参数对象为PreparedStatement实例设定参数,执行 PreparedStatement并从ResultSet中创建结果对象。


    2) 执行SQL的更新数据语句时,返回受影响的数据行数。执行查询语句时,将返回一个结果对象或对象的集合。和参数对象一样,结果对象可以是Java Bean,Map实现和基本数据类型的包装类

 

 结合传统的JDBC操作,转化为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.   关闭数据库连接

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值