先下載相關的ibatis
1.建立解決方案,該方案包括4個項目,分別是類庫DAO、Model、Service以及Web應用程序WebApp。
2.創建testDB,創建表:
USE [testDB]
GO
/****** Object: Table [dbo].[testTable1] Script Date: 02/21/2013 17:30:46 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[testTable1](
[Col1] [int] NULL,
[Col2] [int] NULL,
[Col3] [int] NULL
) ON [PRIMARY]
GO
3.DAO操作:
引用相關的dll:包括IBatisNet.Common、IBatisNet.Common.Logging.Log4Net、IBatisNet.DataAccess、IBatisNet.DataMapper、Model
新建test.xml,內容如下:
<?xml version="1.0" encoding="utf-8" ?>
<sqlMap namespace="T" xmlns="http://ibatis.apache.org/mapping" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<alias>
<typeAlias alias="T.test" type="Model.test, Model" />
</alias>
<resultMaps>
<resultMap id="TestResult" class="T.test"></resultMap>
<result property="Col1" column="Col1"></result>
<result property="Col2" column="Col2"></result>
<result property="Col3" column="Col3"></result>
</resultMaps>
<statements>
<!--<select id="Select" resultMap="TestResult">
select * from testTable1
</select>-->
<select id="SelectCount" resultClass="int" >
select count(*) from testTable1
</select>
</statements>
</sqlMap>
alias節點中type=類,程序集
把下載的provider.config文件複製至DAO項目下,添加sqlserver2008的節點,添加內容如下:
<provider
name="sqlServer2008"
enabled="true"
default="true"
description="Microsoft SQL Server, provider V4.0.0.0 in framework .NET V4.0"
assemblyName="System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
connectionClass="System.Data.SqlClient.SqlConnection"
commandClass="System.Data.SqlClient.SqlCommand"
parameterClass="System.Data.SqlClient.SqlParameter"
parameterDbTypeClass="System.Data.SqlDbType"
parameterDbTypeProperty="SqlDbType"
dataAdapterClass="System.Data.SqlClient.SqlDataAdapter"
commandBuilderClass=" System.Data.SqlClient.SqlCommandBuilder"
usePositionalParameters = "false"
useParameterPrefixInSql = "true"
useParameterPrefixInParameter = "true"
parameterPrefix="@"
allowMARS="true"
/>
把下載的SqlMap.config文件複製至DAO項目下:
<?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="../../../Files/properties.config"/>-->
<settings>
<setting useStatementNamespaces="true"/>
</settings>
<!--數據驅動提供類配置文件的路徑和文件名-->
<providers embedded="providers.config,DAO"/>
<!-- 數據庫連接信息 -->
<!--<database>
<provider name="MySql"/>
<dataSource name="DataSource" connectionString="${connectionString}"/>
</database>-->
<database>
<provider name="sqlServer2008"></provider>
<dataSource name="DataSource" connectionString="${connectionString}"/>
</database>
<sqlMaps>
<sqlMap embedded="test.xml,DAO" />
</sqlMaps>
</sqlMapConfig>
注:provider中name值與剛才provider.confg中添加的provider節點的name屬性值一樣
provider.config、SqlMap.config、test.xml三個文件屬性中生成操作改成嵌入的資源
4.Model操作:
和之前的ado.net寫model差不多。
5.service操作:
由於邏輯簡單,直接調用DAO的結果即可。
6.WebApp
測試demo,因此直接將結果顯示在form中。
例子鏈接:例子