《Spring技术内幕》学习笔记13——SqlMapClientTemplate对Ibatis的封装

来源:互联网 发布:网络可视对讲系统 编辑:程序博客网 时间:2024/05/21 15:54

1. SqlMapClientFactoryBean

Spring中通过SqlMapClientTemplate提供对Ibatis的支持,与SpringHibernate的支持类似,SpringSqlMapClientFactoryBean就是管理IbatisIoC容器,我们首先分析SqlMapClientFactoryBean的源码:

SqlMapClientFactoryBean实现了SpringFactoryBean接口,是Spring中管理IbatisIoC容器,在IoC容器初始化过程中主要完成定位Ibatis配置文件和Ibatis映射文件等工作。同时SqlMapClientFactoryBean实现了InitializingBean接口,实现了afterPropertiesSet方法,该方法是在IoC容器初始化完成之后由IoC容器进行回调的,在该方法中主要是根据定义的Ibatis配置和映射文件创建IbatisSqlMapClient对象的过程。

2.SqlMapClientTemplate

Spring通过SqlMapClientTemplateIbatis一些通用操作做统一的封装处理,同时也对IbatisAPI做了一些封装,方便开发者使用,下面我们继续分析SqlMapClientTemplateIbatis封装的实现。

(1).execute方法的实现:

JdbcTemplateHibernateTemplate一样,SpringSqlMapClientTemplate中也是通过execute方法封装Ibatis增删改查前的通用操作,同时在execute方法中调用相应的回调对象的回调方法来真正完成Ibatis的处理操作,execute方法源码如下:

(2).Spring封装Ibatis API的方法:

我们以SpringqueryForObject方法为例,分析Spring封装Ibatis API的实现,源码如下:


原创粉丝点击