.NET中使用NHibernate步驟及詳解


第一步:
引用nhibernate.dll
第二步:
創建實體類和映射文件,映射文件以 .hbm.xml為后綴名。配置示例如下:
 
01.<?xml version="1.0" encoding="utf-8" ?>  
02.<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" default-lazy="false">  
03.//name=類的全名,命名空間 table=表名  
04.<class name="Modle.person, Modle" table="person" >  
05.//name=屬性名 cloumn=字段名稱 unsaved-value標識是否為新的內容  
06.<id name="id" column="id" type="Int32" unsaved-value="0">  
07.//id增長模式,native表示由hibernate控制自動增長  
08.<generator class="native" />  
09.</id>  
10.<property name="name" column="name" type="String" length="20" />  
11.<property name="age" column="age" type="Int32" length="4" />  
12.</class>  
13.</hibernate-mapping>  

 注意:映射文件作為嵌入的資源到程序中

 

第三步:
創建nhibernate配置文件,配置文件以nhibernate.cfg.xml為名,這樣nhibernate啟動時自動加載
nhibernate.cfg.xml文件。當然,我們也可以用其他命名方式,這樣在創建Configuration時指定文件名。配置示例
如下:
01.<?xml version="1.0" encoding="utf-8"?>  
02.<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">  
03.<session-factory name="sessionfactory">  
04.<!-- 數據庫連接提供接口 -->  
05.<property   
06.  
07.  
08.name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>  
09.  
10.  
11.<!--數據驅動類 -->  
12.<property   
13.  
14.  
15.name="connection.driver_class">NHibernate.Driver.SqlClientDriver</property>  
16.  
17.  
18.<!--指定數據庫方言, NHB可以針對數據庫方言進行優化 -->  
19.<property name="dialect">NHibernate.Dialect.MsSql2000Dialect</property>  
20.<!--連接字符串, uid和pwd改成你自己的哦。 -->  
21.<property name="connection.connection_string">Data Source=   
22.  
23.  
24.(local);Database=數據庫名稱;Integrated Security=SSPI</property>  
25.<!--property name="connection.connection_string">server=.;   
26.  
27.  
28.Database=數據庫名稱;uid=sa;password=;</property-->  
29.<property name="connection.isolation">ReadCommitted</property>  
30.  
31.  
32.<!-- 指定在log4net中是否顯示sql語句, 用於調試 -->  
33.<property name="show_sql">true</property>  
34.  
35.  
36.  
37.  
38.<!--配置外連接-->  
39.<property name="use_outer_join">true</property>  
40.<!--配置超時-->  
41.<property name="command_timeout">3000</property>  
42.<!--配置true/false等表達方式-->  
43.<property name="query.substitutions">true 1, false 0, yes 1, no 0</property>  
44.<property name="hibernate.current_session_context_class">managed_web</property>  
45.<!-- HBM Mapping Files -->  
46.//映射文件assembly表示嵌入的資源assembly=命名空間,hibernate會自動加載   
47.  
48.  
49.//以.hbm.xml為后綴的文件  
50.<mapping assembly="Modle" />   
51.</session-factory>  
52.</hibernate-configuration>  

 

nhibernate配置文件一般有幾個關鍵屬性:
一、數據庫連接提供接口
二、數據驅動類
三、數據庫方言
四、連接字符串
五、映射文件
配置好后,我們可以在程序中使用。方法如下:
01.Configuration cfg = new Configuration().configure();//以hibernate.cfg.xml為文件名  
02.Configuration cfg = new Configuration().configure("文件名");//指定文件名  
03.ISessionFactory factory = cfg.buiddSessionfactory();  
04.ISession session = factory.openSession();  

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM