iBATIS.net开发的第一个web实例

这是我用iBATIS.net开发的第一个web实例,参考网上资料自己改进实现的。其实,除了配置和写sql之外,调用iBATIS.net对于开发人员是非常省事的。下面我会从配置和使用过程中遇到的问题讲解我的使用心得。
1、如何使用iBATIS.net
(1)、新建一个解决方案叫IBatisNetDemo,里面包含两个工程,一个是IBatisWeb,你可以把它理解为三层中的表现层;还有一个工程叫IBatisNetDemo,它主要是引用iBatis.net的相关类库实现业务逻辑的,所以你也可以把它当做业务逻辑层来对待。至于数据层在哪里?读者可能已经想到,iBatis.net已经帮我们封装好了数据处理底层的东东,所以iBATIS.net的几个相关类库我们就完全可以理解为数据层。这样,一个经典三层架构就搭建好了。
(2)、IBatisNetDemo工程下,我们引用了IBatisNet.Common和IBatisNet.DataMapper两个类库(关于公共类库,放在一个公共文件夹Sharelibs下,文章最下面我会给出Demo下载链接),接着按照一般步骤写配置文件和实现代码(我会在“注意点”里详细讲解这个过程)。
(3)IBatisWeb工程是一个web项目,它引入了IBatisNetDemo工程。在web.config文件中,我们配置了日志管理相关的东东,所以还需要引入其他类库(可以查看web工程下bin文件夹下的文件)。其中log.txt文件你可以查看你自己机器上iBatis.net工作情况,对于维护和调试是有参考意义的。在页面(Default.aspx)中,你可以直接调用业务逻辑中的增删改查等操作。
下面是第一次加载网页的运行结果:

2、业务逻辑层的一些注意点
IBatisNetDemo工程是我们三层里的业务逻辑层,这里我们在微软的测试数据库Northwind中新建一个表Person来做一个业务逻辑测试。在引用了IBatisNet.Common和IBatisNet.DataMapper两个类库后,我们按部就班地要写配置和业务实现代码:
(1)、新建表Person
工程中添加Script文件夹,Person.sql如下:
Code
(2)、新添Domain文件夹,添加一个实体类Person.cs(读者可参考demo);
(3)定义实体对应的xml文件:Person.xml(新添Map文件夹,在Map下添加SqlClient文件夹);
(4)可用的实体业务操作
新添Service文件夹,建BaseService.cs和PersonService.cs文件。BaseService初始化一个IBatis.Net下的SqlMapper对象;PersonService继承自BaseService,用SqlMapper对象实例实现增删改查等业务。
(5)三个.config文件说明
a、providers.config  这个直接拷贝到根目录,该文件定义各种数据库的驱动,包括SqlServer, Oracle, MySQL, PostgreSQL, DB2 and OLEDB, ODBC 等;
b、database.config
Code
毫无疑问,是数据库相关配置文件,笔者的数据库还是sql2005Express版,读者可根据自己数据库的实际情况修改。
c、sqlmap.config
Code
这三个.config文件是很重要的,尤其是sqlmap.config,它要和实体类相关类库,xml等关联起来,所以需要小心编写。

下载地址:Demo下载
posted on 2009-07-26 09:22  JeffWong  阅读(3690)  评论(5编辑  收藏  举报