NHibernate系列
NHibernate系列
写在前面
这篇总结本来是昨天要写的,可昨天大学班长来视察工作,多喝了点,回来就倒头就睡了,也就把这篇总结的文章拖到了今天。
nhibernate系列从开始着手写,到现在前后耗费大概两个月的时间,通过总结这个系列,确实收获不小,这里将本系列的导航,列出放在这里算是对nhibernate系列的一个小总结,也方便想学习nhibernate的朋友查找。
nhibernate文档
文档部分是从网上搜集,认为还是比较全面的,就在博客上做了记录,也希望在用到的时候,有个地方可以方便的查找。
[NHibernate]持久化类(Persistent Classes)
[NHibernate]集合类(Collections)映射
[NHibernate]缓存(NHibernate.Caches)
[NHibernate]NHibernate.Tool.hbm2net
工作中遇到的bug
工作中使用nhibernate遇到的bug,这里也记录一下,有的在总结的时候在对应的文章中已经列出。如果在以后的工作中,再遇到bug,就在这里追加。
[NHibernate]Nhibernate如何映射sqlserver中image字段
nhibernate系列文章
[NHibernate]条件查询Criteria Query
[Nhibernate]SchemaExport工具的使用(一)——通过映射文件修改数据表
[Nhibernate]SchemaExport工具的使用(二)——创建表及其约束、存储过程、视图
收获
首先很感谢园友@李永京,看他的那个系列,真心不错,也从他那里学到不少东西。
在写本系列的过程中,体会最深的就是,有些东西,如果觉得对你有用,最好还是自己动手实践一下,有的时候你看着文章,很简单啊,就是那么回事,在你真正去做的时候,你会发现会暴露出很多问题,如果有朋友在跟我这个系列学习,会发现我有时更新文章比较慢,主要原因有的地方遇到问题了,卡在那个地方了,遇到问题总得想办法解决,所以拖慢了自己的节奏(因为公司项目需要去外地出差没更新文章除外)。学习的过程,就是不断的解决问题的过程,解决一个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也感兴趣,该群热烈欢迎您的加盟,也许因为您的加入,该群会霸气测漏!
该群不会因为您是初学者而鄙视您,也不会因为您是大牛,每天上班前烧香拜您,来了就是朋友!勿喜勿近!
NHibernate系列的更多相关文章
- NHibernate系列文章一:NHibernate介绍
摘要 NHibernate是一个成熟的开源的面向对象的.net映射框架.大量的实际项目中正在使用该框架.他是建立在ADO.Net基础之上.目前的版本是NHibernate 4.0.4.本系列文章都是基 ...
- NHibernate系列文章目录
第一章:NHibernate基础 NHibernate介绍 第一个NHibernate工程 简单的增删改查询 运行时监控 NHibernate配置 数据类型映射 Get/Load方法 NHiberna ...
- NHibernate系列文章二十八:NHibernate Mapping之Auto Mapping(附程序下载)
摘要 上一篇文章介绍了Fluent NHibernate基础知识.但是,Fluent NHibernate提供了一种更方便的Mapping方法称为Auto Mapping.只需在代码中定义一些Conv ...
- NHibernate系列文章二十七:NHibernate Mapping之Fluent Mapping基础(附程序下载)
摘要 从这一节起,介绍NHibernate Mapping的内容.前面文章都是使用的NHibernate XML Mapping.NHibernate XML Mapping是NHibernate最早 ...
- NHibernate系列文章二十五:NHibernate查询之Query Over查询(附程序下载)
摘要 这一篇文章介绍在NHibernate 3.2里引入的Query Over查询,Query Over查询跟Criteria查询类似.首先创建IQueryOver对象,然后通过调用该对象的API函数 ...
- NHibernate系列文章二十四:NHibernate查询之Linq查询(附程序下载)
摘要 NHibernate从3.0开始支持Linq查询.写Linq to NHibernate查询就跟写.net linq代码一样,非常灵活,可以很容易实现复杂的查询.这篇文章使用Linq to NH ...
- NHibernate系列文章二十三:NHibernate查询之Criteria查询(附程序下载)
摘要 上一篇文章介绍了NHibernate HQL,他的缺点是不能够在编译时发现问题.如果数据库表结构有改动引起了实体关系映射的类有改动,要同时修改这些HQL字符串.这篇文章介绍NHibernate面 ...
- NHibernate系列文章二十二:NHibernate查询之HQL查询(附程序下载)
摘要 NHibernate提供了多种查询方式,最早的HQL语言查询.Criteria查询和SQL Query,到NHibernate 3.0的Linq NHibernate,NHIbernate 4. ...
- NHibernate系列文章二十一:延迟加载
摘要 NHibernate的延迟加载机制是很重要的内容.通过关系映射将数据库表之间的关系映射成对象之间的关系,如果没有延迟加载机制,从主表的一个对象的查询将直接查询出所有与该对象关联的其他对象,如果关 ...
随机推荐
- window.open的小技巧分享(转)
今天再次谈起window.open是因为发现了一个比较好玩的小技巧,详细内容我们稍后详细说明. 聊到window.open,不得不说明一下他的使用方法,主要有两种形式: window. ...
- 结构的具体说明sublime text 2/3的Golang开发环境
1.下载并安装sublime text 2/3 官网下载:http://www.sublimetext.com/ 2.安装成功sublime text后.启动sublime text.选择菜单栏&qu ...
- 使用Eclipse设定Android开发环境
使用Eclipse设定Android开发环境 花了大概几天的时间最终搭建好了开发Android的环境了! 我是使用Eclipse +ADT顺利地搭建Android开发环境的. 如今Google以及An ...
- 3.Swift翻译教程系列——Swift基础知识
英语PDF下载链接http://download.csdn.net/detail/tsingheng/7480427 Swift是用来开发iOS和OS X应用的新语言,可是很多地方用起来跟C或者OC是 ...
- crm创建报告补充导航
报告导航实现动态交互体验报告. 通过使用各种类型的操作的,报告允许用户导航到特定的报告.Microsoft Dynamics CRM 记录或其它网站 动态钻取到 Microsoft Dynamics ...
- 使用javascript实现html文字不可选
如何使用js让html该文本是不可选定它?首先想到的是用css选择实现,如下面: -webkit-touch-callout: none; -webkit-user-select: none; -kh ...
- Maven: NoClassDefFoundError: org/codehaus/plexus/classworlds/launcher/Launcher
为了和团队开发环境保持一致,须要 在Ubuntu上安装maven2.2.1,引文我之前已经用apt-get命令安装了3.3的maven.在运行maven命令时报错: Maven: NoClassDef ...
- Android 4.4 KitKat NotificationManagerService使用具体解释与原理分析(一)__使用具体解释
概况 Android在4.3的版本号中(即API 18)增加了NotificationListenerService,依据SDK的描写叙述(AndroidDeveloper)能够知道,当系统收到新的通 ...
- zzu--2014年11月16日月潭赛 C称号
1230: Magnets Time Limit: 1 Sec Memory Limit: 128 MB Submit: 24 Solved: 13 [id=1230" style=&q ...
- Java下获取可用CPU数
1.获取cpu核心数:Runtime.getRuntime().availableProcessors();创建线程池:Executors.newFixedThreadPool(nThreads);/ ...