• 您的位置我爱Aspx >> VB.Net >> nhibernate源码分析之二:会话工厂
  • nhibernate源码分析之二:会话工厂

  • 作者:aspxer  来源:internet  日期:2007-5-20 13:58:17  关键字:
  • nhibernate源码分析之二:会话工厂

    是NHibernate中的关键类,它与数据库连接、数据库事务等进行交互,还存储着与所有持久对象关联的持久化对象,持久化类是持久化的关键,它实现基本的CRUD操作。

    当用户需要持久操作时,由会话工厂创建一个会话供用户进行持久操作。

    1. 会话工厂的创建

    会话工厂由ISessionFactory接口实现,由Configuration的BuildSessionFactory方法创建,会话工厂应该使用Singleton模式。

    如果要访问多个数据库,应建立多个会话工厂。

    //*** Configuration.cs ***

    public ISessionFactory BuildSessionFactory() {

    // ...

    Hashtable copy = new Hashtable();

    foreach(DictionaryEntry de in properties) {

    copy.Add(de.Key, de.Value);

    }

    return new SessionFactoryImpl(this, copy, interceptor);

    }

    其中SessionFactoryImpl为实现ISessionFactory的类,这个类的修饰为Internal。

    2. 持久化类的创建

    持久化类用于对持久对象进行持久化操作,每一个持久对象都有一个与之关联的持久化对象。

    持久化类继承自IClassPersister接口,这个接口定义了用于持久对象的CRUD操作。

    //*** SessionFactoryImpl ***

    private IDictionary classPersisters;

    持久化对象集合,Key为持久对象的类型;

    我对这篇文章有话说?
  • 广告位招租,广告代号:content_468_15
  • 上一篇:101 VB.NET Applications 读书笔记(1)
    下一篇:VB调用webbrowser技巧集2
  • 相关文章