iBATIS的1.9.1版本的DataAccess实现lazyLoad有问题?

简介:
iBATISNet包含两个组件DataAccess和DataMapper, 以前的时候一直在用DataMapper(1.5.0),其中的lazyLoad功能使用起来没什么问题. 最近一个项目中开始结合使用DataAccess(1.9.1)组件来使用,主要是考虑到该组件能够将数据持久层的具体实现隔离在统一的API之后.DAO(Data Access Object)允许我们创建简单的组件以提供对数据的访问,同时又不会将实现的细节暴露给程序的其它部分(层).同时也可以使用不同的数据持久机制,如ADO.NET, iBatis, NHibernate等.

看上去很不错,但不知为何,使用之后lazyLoad不能正常使用,我比较了一下两个程序,发现主要的差别在于DataAccess的使用以及版本的不同,于是将DataAccess和DataMapper的版本分别改为1.8.1和1.5.1(即上一个版本),lazyLoad再无问题,这个实在搞不懂了.

当前只能将版本回到过去了.也许是时候仔细阅读iBatis的源码了.另外,据官方网站称,DataAccess的后续版本可能会被取消,那时可能要使用Castle等框架了 :-(


本文转自一个程序员的自省博客园博客,原文链接:http://www.cnblogs.com/anderslly/archive/2007/07/21/lazyloaddoesnotwork.html,如需转载请自行联系原作者。

目录
相关文章
|
1月前
|
JavaScript
Vue报错\page\ComplianceTraceReport\index.vue{ parser: “babylon“ } is deprecated; we now treat it 怎么解决?
Vue报错\page\ComplianceTraceReport\index.vue{ parser: “babylon“ } is deprecated; we now treat it 怎么解决?
|
6月前
|
前端开发 JavaScript
Jquery前端分页插件pagination同步加载和异步加载
Jquery前端分页插件pagination同步加载和异步加载
51 0
|
XML SQL JavaScript
SpringBoot+MyBatis和MyBatisPlus+vue+ElementUl实现批量删除
批量删除也就是同时删除多条数据,首先要把所需要的数据选中, 批量删除它与删除的功能是一样的,只是它们删除的条数不同而已。当然批量删除的逻辑和知识点多,会比删除复杂一点。批量删除需要一个变量来接收返回值,然后获取选中行数据,再把选中行数据中的id获取到并把所有获取到的id进行拼接。确定用户选中了要删除的数据。判断返回来的值的长度,长度大于0说明用户已经选中要删除的数据,否则就提醒用户选择需要删除的数据, 删除成功后刷新表格,提醒用户已删除成功
SpringBoot+MyBatis和MyBatisPlus+vue+ElementUl实现批量删除
|
Java 数据库连接 开发工具
MyBatis注解开发报错org.apache.ibatis.builder.IncompleteElementException-解决方案
MyBatis注解开发报错org.apache.ibatis.builder.IncompleteElementException-解决方案
118 0
|
SQL 存储 Java
掌握MyBatis插件原理轻松写出自己的PageHelper分页插件
提到插件,相信大家都知道,插件的存在主要是用来改变或者增强原有的功能,MyBatis中也一样
|
SQL Java 关系型数据库
PageHelper分页插件及通用分页js
分页概述 1.物理分页 物理分页依赖的是某一物理实体,这个物理实体就是数据库,比如MySQL数据库提供了limit关键字,程序员只需要编写带有limit关键字的SQL语句,数据库返回的就是分页结果。
2359 0
|
Oracle 关系型数据库
com.github.pagehelper.PageHelper cannot be cast to org.apache.ibatis.plugin.Interceptor和oracle不识别
com.github.pagehelper.PageHelper cannot be cast to org.apache.ibatis.plugin.Interceptor和oracle不识别: https://blog.
2852 0