![](http://blog.csdn.net/images/blog_csdn_net/billy_zh/19183/o_nhibernate-uml.jpg)
[以nhibernate-PreAlpha-Build-2为准]
从图中可以看到,Session和SessionFactory是NHibernate的核心部分。
SessionFactory维护到持久机制(数据库)的连接并对它们进行管理,同时还保存着所有持久对象的映射信息。
SessionFactory由Configuration.BuildSessionFactory创建,这个对象一般使用Singleton模式。
Session用于将对象持久化,支持数据库事务,另外Session还提供了强大的数据加载功能。
Session由SessionFactory创建。
其它对象说明:
IConnectionProvider: 连接提供者接口,负责与数据进行连接;
Dialect: 数据库方言;
CollectionPersister: 集合持久化类;
IClassPersister: 类持久化接口,定义了基本的CRUD操作;
TransactionFactory: 数据库事务工厂;