耗时两月,NHibernate系列出炉

写在前面

这篇总结本来是昨天要写的,可昨天大学班长来视察工作,多喝了点,回来就倒头就睡了,也就把这篇总结的文章拖到了今天。

nhibernate系列从开始着手写,到现在前后耗费大概两个月的时间,通过总结这个系列,确实收获不小,这里将本系列的导航,列出放在这里算是对nhibernate系列的一个小总结,也方便想学习nhibernate的朋友查找。

nhibernate文档

文档部分是从网上搜集,认为还是比较全面的,就在博客上做了记录,也希望在用到的时候,有个地方可以方便的查找。

[Nhibernate]体系结构

[NHibernate]ISessionFactory配置

[NHibernate]持久化类(Persistent Classes)

[NHibernate]O/R Mapping基础

[NHibernate]集合类(Collections)映射 

[NHibernate]关联映射

[NHibernate]Parent/Child

[NHibernate]缓存(NHibernate.Caches)

[NHibernate]NHibernate.Tool.hbm2net

[NHibernate]Nullables

工作中遇到的bug

工作中使用nhibernate遇到的bug,这里也记录一下,有的在总结的时候在对应的文章中已经列出。如果在以后的工作中,再遇到bug,就在这里追加。

[NHibernate]Nhibernate如何映射sqlserver中image字段

nhibernate系列文章

[NHibernate]基本配置与测试 

[NHibernate]HQL查询 

[NHibernate]条件查询Criteria Query

[NHibernate]增删改操作

[NHibernate]事务

[NHibernate]并发控制

[NHibernate]组件之依赖对象

[NHibernate]一对多关系(级联删除,级联添加)

[NHibernate]一对多关系(关联查询)

[NHibernate]多对多关系(关联查询)

[NHibernate]延迟加载

[NHibernate]立即加载

[NHibernate]视图处理

[NHibernate]N+1 Select查询问题分析

[NHibernate]存储过程的使用(一)

[NHibernate]存储过程的使用(二)

[NHibernate]存储过程的使用(三)

[Nhibernate]SchemaExport工具的使用(一)——通过映射文件修改数据表

[Nhibernate]SchemaExport工具的使用(二)——创建表及其约束、存储过程、视图

[Nhibernate]对象状态

[Nhibernate]一级缓存

[Nhibernate]二级缓存(一)

[Nhibernate]二级缓存(二)

 收获

首先很感谢园友@李永京,看他的那个系列,真心不错,也从他那里学到不少东西。

在写本系列的过程中,体会最深的就是,有些东西,如果觉得对你有用,最好还是自己动手实践一下,有的时候你看着文章,很简单啊,就是那么回事,在你真正去做的时候,你会发现会暴露出很多问题,如果有朋友在跟我这个系列学习,会发现我有时更新文章比较慢,主要原因有的地方遇到问题了,卡在那个地方了,遇到问题总得想办法解决,所以拖慢了自己的节奏(因为公司项目需要去外地出差没更新文章除外)。学习的过程,就是不断的解决问题的过程,解决一个bug,那心情是如何舒畅啊,我相信大部分人都深有体会。哪个大牛不是bug这个枪林弹雨中趟过来的?

在实际工作中,nhibernate有些内容确实使用的很少,我觉得最主要的原因是不知道怎么用,也甚至一部分人,根本就不知道nhibernate还可以这样使用。这个系列完成了,正好公司有个新的项目立项,也算是自己运气太好了,能够学以致用,正好印证那句话,好运气都是留给有准备的人的(自我安慰一下)。话又说回来,这个项目正好对自己这段时间的学习成果进行一下验收,我不敢保证使用过程中百分百不出问题,但我敢保证,在实际运用过程中,我至少比别人少走很多弯路。

意外收获

在写这个系列过程中,还是有意外收获的,比如在本系列中学会了单元测试的使用,之前,在实际工作中,单元测试确实用的少,也怕麻烦,但在使用了单元测试之后,发现我彻底被它的征服了,我相信在以后的工作中,我会经常使用它,不管别人用不用,但是我肯定是会用的。

另外一个收获就是,突然某一天有人在博客园私信我,问我有没有想法写nhibernate方面的书籍,确实很意外,自己当时也上一些电子商务网站搜了一下nhibernate相关的书籍,发现绝大部分的书都是英文的,中文的确实很少。也有过这样的想法,想尝试一下,我也深知自己在这方面研究的还不太深入,我这个系列作为入门及的教程还是可以的。

篇后语

这个系列作为nhibernate入门系列确实足够了,当然也有许多不足的地方,还望多多包涵。学习的过程,也是一个不断迭代的过程,我相信通过本系列的学习,我不敢保证你成为nhibernate方面的高手中的高高手,但是成为大内低手是没有一点问题的。

在本系列文章的评论中有很多朋友问我nhibernate与ef相比有什么优势,我也只能说各有千秋,我这人不喜欢评论那个语言的好与坏,哪个框架的好与坏,有些东西的出现总是有一定道理的,学的是它那种编程的思想,多问个为什么,多少是有点收获的。

关于这个问题,如果你打破砂锅问到底,这儿有篇文章或许你会感兴趣:http://www.infoq.com/cn/news/2010/01/Comparing-NHibernate-EF-4/

(如果文章中有些说法,你不苟同,请你看看这篇文章写的时间)

再次感谢您对本系列文章的关注,如果在工作中遇到新的或者棘手的问题,我将即时更新到本系列中,能让您在使用过程中少走哪怕一步弯路,我以足矣!

广告

另外热烈庆祝下方qq群更名为<.Net中国战区>,当时想出这样个名字,觉得热血沸腾,充满正能量!如果您对nhibernate也感兴趣,该群热烈欢迎您的加盟,也许因为您的加入,该群会霸气测漏!

该群不会因为您是初学者而鄙视您,也不会因为您是大牛,每天上班前烧香拜您,来了就是朋友!勿喜勿近!

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。