代码改变世界

随笔分类 - 28-iBATIS

iBATIS In Action:使用高级查询技术(一)

2007-12-27 20:40 by Anders Cui, 13696 阅读, 收藏, 编辑
摘要:本文翻译自《iBATIS in Action》第6章的1、2两节。 iBATIS.NET框架的一大特性就是简单。但其中也有些内容比较复杂,比如加载复杂的集合属性。在使用iBATIS处理单表的操作时非常简单、直接,但在处理复杂的多表关系时就不是如此了。如何在加载一个用户的信息时加载他的订单信息?在日常的应用程序开发中,这种经典的主从关系扮演着非常重要的角色。本文将对这个棘手的问题进行讨论。 阅读全文

iBATIS In Action:执行非查询语句(二)

2007-12-11 15:45 by Anders Cui, 6483 阅读, 收藏, 编辑
摘要:本文翻译自《iBATIS in Action》第5章的后3节。 首先是如何更新和删除数据,简单地讨论了并发和子项记录的处理;接着详细讨论了存储过程的使用,即使您是一个面向对象的信徒,也不要盲目排斥存储过程,作者就试着纠正一些错误的观点,然后讲解了存储过程不同类型参数的用法。 阅读全文

离奇的问题:当iBATIS遇到Timer

2007-11-12 11:17 by Anders Cui, 1327 阅读, 收藏, 编辑
摘要:为了在程序中实现定时任务,我在Global.asax里面加了一个System.Threading.Timer类的实例,然后在 Application_Start()中将其初始化,开始还没问题,前两天遇到了一个奇怪的异常: WebSessionStore: Could not obtain reference to HttpContext. 阅读全文

iBATIS In Action:执行非查询语句(一)

2007-11-05 18:52 by Anders Cui, 5224 阅读, 收藏, 编辑
摘要:本文翻译自《iBATIS in Action》第5章的1、2节。 对数据库执行查询无疑很重要,但多数程序同时也需要将数据写入数据库。本文首先讨论了用于更新数据库的API,然后是插入数据的相关内容:内联参数和外部参数的选择、获取自动生成主键的值。 阅读全文

iBATIS In Action:使用映射语句(二)

2007-11-04 14:58 by Anders Cui, 6591 阅读, 收藏, 编辑
摘要:本文翻译自《iBATIS in Action》第4章的后半部分。 Parameter Map和Result Map属于Data Map文件的重要内容,本文对其进行了详细的讨论。 阅读全文

iBATIS.NET Tips & Tricks(2) : 将image列设置为null值时遇到的Operand type clash异常。

2007-11-02 14:48 by Anders Cui, 1057 阅读, 收藏, 编辑
摘要:如何将image列设置为null值? 阅读全文

iBATIS In Action:使用映射语句(一)

2007-10-16 19:37 by Anders Cui, 12939 阅读, 收藏, 编辑
摘要:本文翻译自《iBATIS In Action》的第4章的1、2两节。 iBATIS实战,感觉从这一章才算开始实战。 首先是iBATIS的入门基础,包括基本的API介绍,映射语句的类型等; 随后比较详细地讨论了select类型语句的用法。 阅读全文

iBATIS In Action:iBATIS的安装和配置

2007-09-29 11:51 by Anders Cui, 17938 阅读, 收藏, 编辑
摘要:本文的主题是iBATIS的安装和配置,内容如下: 3.1 获取iBATIS发行包; 3.2 发行包的内容; 3.3 依赖项; 3.4 将iBATIS添加到应用程序 3.5 iBATIS和ADO.NET; 3.6 iBATIS的配置(SqlMap.config); 3.7 小结 iBATIS的配置这一部分基本上是基于iBATIS官方的DataMapper Guide文档。 阅读全文

iBATIS In Action:序言和目录

2007-09-07 00:40 by Anders Cui, 6684 阅读, 收藏, 编辑
摘要:iBATIS In Action翻译系列第一篇 1.iBATIS In Action 序言 2.阅读此书需要的前提知识 3.本人的一点感想和提示 4.已完成部分的索引 阅读全文

iBATIS In Action:什么是iBATIS(二)

2007-09-02 18:56 by Anders Cui, 10339 阅读, 收藏, 编辑
摘要:本文翻译了《iBATIS In Action》一书第二章的后半部分。 内容如下: 2.5 iBATIS快速上手 2.6 未来:iBATIS将去向何处 2.7 总结 阅读全文

iBATIS In Action:什么是iBATIS(一)

2007-08-19 20:39 by Anders Cui, 19494 阅读, 收藏, 编辑
摘要:这一篇是iBATIS In Action一书第二章的前半部分,给iBATIS说了一大堆的好话。 主要内容如下: 2.1 SQL 映射; 2.2 工作原理; 2.3 为什么要使用iBATIS; 2.4 何时不用iBATIS 阅读全文

NPetshop Source for .NET 2.0

2007-08-07 00:31 by Anders Cui, 6197 阅读, 收藏, 编辑
摘要:最近决定把《iBATIS in Action》翻译一下,算作给自己的一个不小的挑战。 所以把NPetshop重新拿出来整理了一下,它原先的版本实在够老了,把它升级到了DataAccess1.8.1和DataMapper1.5.1,然后放到了.NET2.0下。这样在翻译该书的时候可以使用NPetshop的代码作为示例。 阅读全文

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

2007-07-21 22:19 by Anders Cui, 1462 阅读, 收藏, 编辑
摘要:原来一直单独使用DataMapper,最近将DataAccess和DataMapper结合使用,并升级到最新版本(1.9.1和1.6.1), lazyLoad竟不能正常使用.我比较了一下两个程序,发现主要的差别在于DataAccess的使用以及版本的不同,于是将DataAccess和DataMapper的版本分别改为1.8.1和1.5.1(即上一个版本),lazyLoad再无问题,这个让人搞不懂. 阅读全文

iBATIS.NET Tips & Tricks(1) : 使用Nullable类型

2007-06-28 20:27 by Anders Cui, 1083 阅读, 收藏, 编辑
摘要:使用Nullable类型来避免外键冲突和日期范围等问题。 阅读全文

使用iBatis和ObjectDataSource轻松实现分页

2007-06-21 19:13 by Anders Cui, 9624 阅读, 收藏, 编辑
摘要:利用iBatis的方法配合ObjectDataSource控件可以很容易地实现比较通用的分页方案. 阅读全文

关于在IBatis中返回DataSet

2007-05-30 09:55 by Anders Cui, 3769 阅读, 收藏, 编辑
摘要:在一个邮件列表的讨论中,了解了如何在IBatis.Net中返回DataSet以及一些相关的观点。 阅读全文

关于IBatisNet的两个简单CodeSmith模板

2006-08-25 12:47 by Anders Cui, 3943 阅读, 收藏, 编辑
摘要:最近使用了下IBatisNet,感受到了它的灵活和强大,但是如果手工去写配置文件和实体类,确实很麻烦。我参考CodeSmith的范例文件,做出了两个简单模板,分别生成简单的实体类和基本的SQL语句。CodeTemplates.rar文件包中包含两个模板,IBatis.cst用于生成实体类;IBatisStatements.cst用于生成SQL语句。使用的数据表的脚本在CreateTable.sql... 阅读全文