一. 介绍
平常做企业级应用,需求变化是经常的事,而很多基础代码重复也是很让人头疼的问题。所以很多人会使用一些ORM框架来增强项目的可维护性、可扩展性。IBatis.Net就是一个比较易用的ORM框架,使用起来较为方便、灵活。IBatis.Net是从Ibatis的Java版本移植过来的.NET版本。iBATIS作为一种独特的Data Mapper,使用SQL映射的方式将对象持久化至关系型数据库。简单的理解就是它将我们在数据访问层实现的C#逻辑代码,变为通过关系数据库与对象的映射,将SQL逻辑放到外部的XML配置文件中,以方便以后的维护。
这个框架有两个主要的组成部分,一个是SQL Maps,另一个是Data Access Objects。Sql Maps是这个框架的核心部分,通过使用Sql Maps你可以显著的节约数据库操作的代码量。SQL Maps使用一个简单的XML文件来实现从实体到SQL statements的映射。使用DAO,封装了对数据的访问,你可以动态配置你的应用程序来访问不同的实体存储机制。隐藏持久性层实现的细节,Data Access Objects允许你通过一个简单接口的来操作数据。
二. 准备工作
下面先让我们来动手实践一下,看看如何使用和调用IbatisNet。
1. 下载IbatisNet软件包: http://ibatis.apache.org/dotnetdownloads.cgi
iBATIS.NET Downloads
|
|
官方网站还提供了一个示例项目:NPetShop Example Application
2. 建立测试数据库,并在数据库中创建一个Person 表:
字段 |
类型 |
大小 |
PER_ID |
int |
4 |
PER_FIRST_NAME |
nvarchar |
40 |
PER_LAST_NAME |
nvarchar |
40 |
PER_BIRTH_DATE |
DateTime |
8 |
PER_WEIGHT_KG |
float |
8 |
PER_HEIGHT_M |
float |
8 |
三. 开发步骤
1. 逻辑结构
2. 建立项目
打开VS.NET,新建一个“ASP.NET Web应用程序”项目。
3. 添加引用
在项目中添加下面dll的引用:
IBatisNet.Common.dll
IBatisNet.DataMapper.dll
IBatisNet.DataAccess.dll
4. 在项目中,添加配置文件 SqlMap.config
该文件为IBatis.net默认的配置文件,不能缺少,当然可以不必是Sql.config,但是如果改为其他的名字的话需要在前台代码中说明,请参考下面的内容providers.config:该文件必须存在,并且不能改变它的文件名,该文件描述了如何连接数据库,无须配置
结合上面示例中的IbatisNet配置文件,下面对配置文件中各节点的说明:
<?xml version="1.0" encoding="utf-8"?> <sqlMapConfig xmlns="http://ibatis.apache.org/dataMapper" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
<!-- 常量属性,通过单独文件properties.config加载--> <properties resource="properties.config"/> <!-- 常量属性,通过程序集资源中 加载 <properties embedded="database.config, IBatisNetDemo"/>-->
<settings> <setting useStatementNamespaces="${useStatementNamespaces}"/> <setting cacheModelsEnabled="true"/> <setting validateSqlMap="false"/> </settings>
<!-- 数据驱动提供类配置文件的路径和文件名 --> <providers resource="providers.config"/>
<!-- 设置数据库连接信息 --> <database> <provider name="${provider}"/> <dataSource name="IBatisNetTest" connectionString="${connectionString}"/> </database>
|