NHibernate近况
目前我们很难对NHibernate整个技术体系有个完整的把握。其原因是官方文档不全,关于NHibernate的书也没几本。NHibernate 3.0 CookBook这本书可以算是弥补了NHibernate文档很多空白。
在国内更是资料寥寥无几。甚至可以说是空白。但是从今年的NHibernate下载量官方统计来看,中国居然是全球第一,占24%,高达4万之多,从这么大的数字来看,不知道有多少人真正的把NHibernate使用地“灵活自如”呢,这的确是个未知数。
这本书概述
从全部的内容来看,这本书几乎涵盖了NHibernate 3版本的全部内容,基本上对NHibernate有了一个整体的把握:
- NHibernate功能介绍
- Mapping
- Configuration
- Query
- Test
- Extending
- NHibernate贡献项目介绍
- 各种环境(ASP.NET MVC、ASP.NET、WPF、WinForms)里的最佳实践
现在我们使用到的技术在这本书都有一个比较全面的介绍。
每一个章节都是采用真实实战的方式去写的,基本上有四步:
- 准备工作(Getting ready):为这个知识点准备下实体。
- 如何实现(How to do it...):进行实际编码完成功能。
- 分析原理(How it works...):详细描述了为什么这样做以及这样做的原因。
- 必要扩展(There‘s more...):对这个知识点进行适当扩展。
在完成之后你也基本上对这节有了一个清晰的把握了。而且可以仔细阅读源代码实际运行看结果。
这本书分析
第一章:Models and Mappings
本书把映射作为出发点,介绍了三种映射方式:XML、Fluent、ConfORM。然后分析一些映射实例:类继承映射、一对多映射、版本映射、枚举映射、组件映射。通过这一章基本上已经熟悉了映射,但是有一些内容没有介绍, 例如数据库对象(DatabaseObjects)、筛选定义(FilterDefinitions)、结果集(ResultSets)、类型定义(TypeDefinitions)等等。
第二章:Configuration and Schema
我们使用NHibernate,必须先配置NH。这一章作者使用了App.config、hibernate.cfg.xml、Loquacious、FluentNH方式配置NHibernate,并使用NHibernate架构生成工具创建数据库架构。这一章是必不可少的基础内容,往往很多初学者在这里过不去,我想看看这一章就完全清楚了。
第三章:Sessions and Transactions
个人觉得这一章写的最好了,介绍了Session接口和几种Session策略,实例分析ASP.NET Web Forms和ASP.NET MVC程序中session per web request策略应用并对其扩展。
第四章:Queries
NHibernate3版本里所有的查询方式,应该是7种:HQL(NHibernate查询语言)、Criteria(条件查询)、QueryOver(Lambda表达式查询)、LINQ(语言集成查询)、H-SQL(NHibernate特定SQL查询)、SQL(原生SQL查询)、Custom DSL(自定义特定领域语言查询)。 不过作者在这一章介绍了常见的几种。每种查询都是举了一些实际例子。
第五章:Testing
作者写个测试环境,并介绍NHibernate Profiler、SQLite和重影。推荐使用这些可以有效的提高工作效率。
第六章:Data Access Layer
我们在程序中NH相关查询代码是写在数据访问层的,作者在这一章介绍了各种查询的写法并阐述了几种模式(Repository、LINQ specifications)在数据访问层的应用。
第七章:Extending NHibernate
扩展NHibernate,这个比较高级,但是在企业级应用里必不可少。作者在这一章介绍的几种扩展都是挺实用的。
第八章:NHibernate Contribution Projects
这一章介绍了NHibernate贡献项目,对于我们使用这些贡献项目有个参考了。
最后作者结合ASP.NET MVC、ASP.NET、WPF、WinForms环境对全书内容整理了一个学习、应用思路。
推荐链接
最后觉得应该把这本书推荐给所有NHibernate开发人员。从这本书中你肯定可以学到很多你不知道的东西。如果有的公司使用NHibernate,推荐采购一本实体书作为手上的参考书。以后我也会结合这本书的内容适当的补充写写博客。当然前提你读过了这本书了。
购买地址:https://www.packtpub.com/nhibernate-3-0-cookbook/book
出版社:Packt Publishing
提供本地下载(2010年11月6号22点更新):Packtpub.NHibernate.3.0.Cookbook.Oct.2010.zip
版权声明:本文为博主http://www.zuiniusn.com原创文章,未经博主允许不得转载。