在Spring使用iBatis及配置讲解

作者:李灿辉 时间:2021-07-06 20:07:39 

就像集成JDBC和其他ORM框架一样,Spring也集成了iBatis。

1,配置iBatis客户模板

iBatis的核心是com.ibatis.sqlmap.SqlMapClient接口。SqlMapClient大致相当于Hibernate的Session或JPA的EntityManager,用于执行全部的数据访问操作。

Spring解决iBatis会话管理和异常处理问题的方案是SQLMapClientTemplate。SQLMapClientTemplate包裹了一个SqlMapClient来透明的打开和关闭会话,还捕获抛出的SQLException。

要想在程序里使用SqlMapClientTemplate,需要在xml中配置一个bean。还需要给SqlMapClientTemplate的sqlMapClient属性指定要注入的bean。sqlMapClient属性必须为一个iBatis的SqlMapClient。在Spring里,获得SqlMapClient的最佳方式是通过SqlMapClientFactoryBean。

在配置SqlMapClientFactoryBean时,需要配置它的dataSource属性,用于指定访问哪个数据库。另一个重要的属性是configLocation,它的值是一个xml文件。

接下来,我们需要定义iBatis的SQL映射表,也就是编写configLocation指定的xml文件的内容。

在这个xml文件中,它的根节点是sqlMapConfig,里面可以包含多个sqlMap节点,每个sqlMap节点的resource属性,也是一个xml文件,在resource指定的xml文件中,我们一般会定义如何将数据库中的一个表映射为一个java对象,并在该文件中定义一些常用的SQL语句。

接下来,简单介绍下如何在DAO里使用SqlMapClientTemplate。在使用SqlMapClientTemplate执行数据访问之前,必须要把它装配到DAO里。这一点比较简单,只需要在定义DAO时,为其指定sqlMapClientTemplate引用即可。

2,建立基于iBatis的DAO

SqlMapClientDaoSupport类是这对iBatis的DAO支持类,它是作为一个父类让DAO实现来继承的。SqlMapClientDaoSupport暴露了一个SqlMapClientTemplate对象,用于执行iBatis查询。

来源:https://blog.csdn.net/li_canhui/article/details/85396299

标签:spring,ibatis,配置
0
投稿

猜你喜欢

  • Android屏幕旋转之横屏竖屏切换的实现

    2023-10-29 21:40:10
  • C#使用FtpWebRequest与FtpWebResponse完成FTP操作

    2021-08-24 04:58:26
  • Java实现单向链表的基本功能详解

    2022-12-18 10:57:02
  • SpringBoot+Elasticsearch实现数据搜索的方法详解

    2023-04-17 02:45:46
  • Java Spring WEB应用实例化如何实现

    2022-05-20 04:26:35
  • 使用IDEA搭建一个简单的SpringBoot项目超详细过程

    2022-07-19 11:43:58
  • C#实现图形区域组合操作的方法

    2023-05-01 19:08:21
  • Java文件操作之按行读取文件和遍历目录的方法

    2023-11-24 16:58:21
  • springboot+mybatis+redis 二级缓存问题实例详解

    2022-08-09 09:06:36
  • Android 第三方应用接入微信平台研究情况分享(二)

    2022-01-20 10:10:38
  • 利用 filter 机制给静态资源 url 加上时间戳,来防止js和css文件的缓存问题

    2022-03-16 07:51:24
  • C#实现Stripe支付的方法实践

    2023-01-22 01:46:47
  • Java递归来实现汉诺塔游戏,注释详细

    2023-07-05 10:33:52
  • Spring Junit单元测试加载配置文件失败问题

    2022-06-05 13:37:48
  • springboot实现通过路径从磁盘直接读取图片

    2023-09-01 03:01:01
  • 利用Python+Java调用Shell脚本时的死锁陷阱详解

    2023-01-10 13:40:20
  • c#语言使用Unity粒子系统制作手雷爆炸

    2021-10-11 11:13:46
  • Android应用中Back键的监听及处理实例

    2022-09-26 02:00:47
  • Java截取字符串的方法

    2023-11-07 09:30:02
  • Spring Boot 中的Servlet简单使用

    2023-01-28 03:08:06
  • asp之家 软件编程 m.aspxhome.com