<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      IBatis.net使用一--用IBatis.net實現數據讀取

      查看文章索引請通過http://www.rzrgm.cn/seesea125/archive/2012/04/17/2453256.html

       

      IBatis.net官方下載地址:http://www.mybatis.org/

      IBatis.net作用是把數據庫查詢與對象的屬性間建立映射關系。但它并不是一個實體關系映射工具,僅用于幫助程序人員建立實體和SQL語句或者存儲過程間的映射。因此只能叫半自動OR/M工具。

      IBatis.net的配置:

      一、引用幾個DLL,注意在數據層引用即可。

      image

      單獨使用映射的情況下,只需要引用IBatisNet.DataMapper.dll就可以了

      其中IBatisNet.Common.dll和Castle.DynamicProxy.dll是必須的

      COMMON是我自己的,不用管它

      IBatisNet.DataAccess.dll是可選的,如果使用Data Access組件,則還需要添加對IBatisNet.DataAccess.dll的引用。

      二、完成對組件的添加后,還需要添加三個XML文檔

      1 providers.config ----DataMapper根據這個確定是什么類型數據庫(放在數據層)

      2 SqlMap.xml  ----數據映射文檔,里面包含了SQL語句(放在數據層)

      3 SqlMap.config ----DataMapper的配置文檔,它詳細描述了工程中SqlMap.XML和providers.config文檔的位置,以及其他配置項(必須放在Web跟目錄下)。

      先看SqlMap.config

       

      <?xml version="1.0" encoding="utf-8"?>
      <sqlMapConfig xmlns="http://ibatis.apache.org/dataMapper" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">  <settings>
          <setting useStatementNamespaces="true"/>//如果是true,那么寫數據查詢時,查詢語句的名稱前要添加它的完整命名空間
          <setting cacheModelsEnabled="true"/>//全局化配置DataMapper客戶能否啟用cache,默認是true
        </settings>  
        <providers embedded="DAL.providers.config, DAL"/>    //指定providers.config的位置

      <database>
          <provider name="sqlServer2.0"/>   //如果使用默認的數據提供者,這句可以不要,如果系統中使用多個數據庫,需要配置provider的內容
          <dataSource name="ConnStr" connectionString="Data Source=.;Database=Test;User ID=sa;Password=123456;Connection Lifetime=3;Min Pool Size=1;Max Pool Size=50;MultipleActiveResultSets=true;"/>    //數據庫鏈接字符串,
      </database>    

      <sqlMaps>
              <sqlMap embedded="DAL.Maps.UserInfo.xml, DAL"/>    //程序的數據映射文件的位置,如果有多個XML,就寫多行,如果比較多,也可以當一個單獨的XML中去寫,比如<sqlMap resource=”Maps/All.XML”/>,然后在ALL.xml再添加數據映射文件,這樣就實現了加載一組數據映射文件
          
      </sqlMaps>    
      </sqlMapConfig>

       

      具體文檔配置可在附件的DEMO中下載查看。

      三、創建SqlMapper實例,這個是單例模式,文件名SqlMapper.CS,放在數據層中。

       

      using System;
      using System.Collections.Generic;
      using System.Linq;
      using System.Text;
      using IBatisNet.Common.Utilities;
      using IBatisNet.DataMapper;
      using IBatisNet.DataMapper.Configuration;
      using IBatisNet.DataMapper.SessionStore;
      namespace DAL
      {
          public class SqlMapper
          {
              private static volatile ISqlMapper _mapper = null;

              protected static void Configure(object obj)
              {
                  _mapper = null;
              }

              protected static void InitMapper()
              {
                  ConfigureHandler handler = new ConfigureHandler(Configure);
                  DomSqlMapBuilder builder = new DomSqlMapBuilder();
                  _mapper = builder.ConfigureAndWatch("SqlMap.config", handler);
                  _mapper.SessionStore = new HybridWebThreadSessionStore(_mapper.Id);
              }

              public static ISqlMapper Instance()
              {
                  if (_mapper == null)
                  {
                      lock (typeof(SqlMapper))
                      {
                          if (_mapper == null// double-check
                          {
                              InitMapper();
                          }
                      }
                  }
                  return _mapper;
              }

              public static ISqlMapper Get()
              {
                  return Instance();
              }
          }
      }

       

      外界調用方法:

      IList list = SqlMapper.Instance().QueryForObject<list>("UserInfo.GetCount", param);

      因為是單例的,第一次調用時,DomSqlMapBuilder對象會通過查詢SqlMap.config來創建一個sqlMapper實例,以后調用就直接從緩存讀取了。

      DomSqlMapBuilder.ConfigureAndWatch()方法負責監視配置文件的更新情況,如果配置或者映射文件有更新,SqlMapper對象會重新載入并不重啟系統

       

      整個配置已經結束,具體可參考DEMO:DEMO下載

      posted @ 2012-03-02 18:07  趙學智  閱讀(6568)  評論(1)    收藏  舉報
      主站蜘蛛池模板: 成人午夜在线观看日韩| 精品亚洲无人区一区二区| 国产色悠悠视频在线观看| 波多野结衣视频一区二区| 亚洲精品成人片在线观看精品字幕| 亚洲高清aⅴ日本欧美视频| 人妻少妇邻居少妇好多水在线| 岑溪市| 久色伊人激情文学你懂的| 日韩乱码人妻无码中文字幕视频 | 十八禁午夜福利免费网站| 精品久久久久久无码中文野结衣| 青青草成人免费自拍视频| 4399理论片午午伦夜理片| 国产成人精品三级麻豆| 欧美视频二区欧美影视| 精品人妻av中文字幕乱| 人妻丰满熟妇av无码区| 91一区二区三区蜜桃臀| 丰满无码人妻热妇无码区| 在线精品自拍亚洲第一区| 欧美成人va免费大片视频| av一区二区中文字幕| 亚洲午夜理论无码电影| 武装少女在线观看高清完整版免费| 性男女做视频观看网站| 欧美一本大道香蕉综合视频| 亚洲国产av无码精品无广告 | 影音先锋啪啪av资源网站| 亚洲成av人片无码迅雷下载| 国产小视频一区二区三区| 亚洲av无码国产在丝袜线观看| 久久精品免视看成人国产| 色综合久久天天综线观看| 丁香花在线影院观看在线播放| 久热天堂在线视频精品伊人| 国产对白老熟女正在播放| 欧美极品少妇×xxxbbb| 伊人久久大香线蕉综合网| 激情 自拍 另类 亚洲| 国产片AV国语在线观看手机版|