ibatisnet連接sql server 2008連接步骤

ibatisnet連接sql server 2008連接方法

先下載相關的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中。


例子鏈接:例子