IBatisNet+Castle构架开发指南



从本质上来说iBATIS不能算是一种orm工具,只是一个DataMapper。
我们甚至可以把它看成一个SQL生成工具,也就是对 ADO.net 中 IDbCommand 和 IDataParameter 的一个XML格式化的配置,SqlMap是IbatisNet 的一个亮点。

从使用上看,IbatisNet 也具有ORM的某些特点,很方便的在实体和数据库之间相互操作
从构架上看,IbatisNet 不像NHibernate 享有数据库的完全控制权,也给我们扩展提供余地
从性能上看,IbatisNet 应该比ORM有优势,而且SQL语句是开放的,可优化的。

什么时候使用IbatisNet  什么时候使用
NHibernate
我们看看IbatisNet 作者的原话

If you are starting a new project and you're in full control of your object model and database design, NHibernate is a good choice of O/R tool.
If you are accessing any 3rd party databases (e.g. vendor supplied), or you're working with a legacy database, or even just a really poorly designed database, then an O/R mapper might not be capable of handling the situation. That's were an SQL Mapper comes in handy

既然写的是开发指南,我就不过多的涉及IbatisNet 实现原理

总体上讲IbatisNet  是我比较喜欢一套构架 已经在几个实践项目应用过


如果用Castle的ICO作为业务容器 和用Castle的事务处理机制,将会有珠联壁合的感觉

先放上一个完整的Demo
===============================================================

IBatisNetDemo

DateBase.sql 为示列数据库角本
将为你创建 Demo数据库和 一个Artical表


Library文件夹 包括用到的Castle 和 IBatisNet  Dll组件
如果引用出错 请手动重新添加
Castle 的版本是1.1.0.0
IBatisNet 的版本为 1.6.1.0

Business.Model文件夹 业务实体
Business文件夹 业务逻辑
Dao文件夹 IBatisNet Dao项目
Web文件夹 Web2.0项目
=================================================================

由于没有去官网去看更新文档,就拿手上早期的版本了


接下来详细讲解

                                                                                                                               To be Continued
 

你可能感兴趣的:(ibatis)