丹尼大叔

数学专业毕业,爱上编程的大叔,兴趣广泛。使用博客园这个平台分享我工作和业余的学习内容,以编程交友。有朋自远方来,不亦乐乎。

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2016年7月9日

摘要: 这篇文章介绍NHibernate最实用的内容:关系映射。NHibernate的关系映射方式有三种:Set:无序对象集合,集合中每一个元素不能重复。List:有序对象集合,集合中的元素可以重复。Bag:无序对象集合,集合中的元素可以重复。Map:键值对集合,相当于Hashtable或Dictionary。这篇文章以一对多关系为例,介绍怎样在NHibernate中建立一对多关系映射。一对多关系是在现实项目中最经常碰到的一种关系。后面文章介绍多对多关系。 阅读全文
posted @ 2016-07-09 22:11 丹尼大叔 阅读(979) 评论(0) 推荐(1) 编辑

摘要: NHibernate的Session的管理涉及到NHibernate的两个最重要的对象ISessionFactory和ISession。ISessionFactory的生成非常消耗资源,通常都在应用程序启动的时候生成,并使用单例模式,被应用程序的所有线程共享。ISession的生成虽然没有ISessionFactory那么消耗资源,但是Session中保存了一级缓存池,如果每次使用到ISession的时候都生成新的ISession对象,而且这样的操作频率很大的时候,也会一定程度上大量消耗内存资源。NHibernate提供CurrentSessionContext对象,将ISession与当前应用的上下文环境进行绑定,先生成ISession,并与CurrentSessionContext绑定,后面直接从CurrentSessionContext中取ISession,可以显著提高执行效率。 阅读全文
posted @ 2016-07-09 16:08 丹尼大叔 阅读(1283) 评论(0) 推荐(0) 编辑