zoukankan      html  css  js  c++  java
  • [转]NHibernate之旅(1):开篇有益

    本节内容

    作者注:2009-11-06已更新

    NHibernate开篇有益

    学习NHibernate有一段时间了,打算做个阶段性总结,就萌生了这个系列,这个系列参考NHibernate官方文档和Steve Bohlen的NHibernate之夏视频教程。作为开篇,首先了解多少人在使用NHibernate,先搞清楚NHibernate是什么?学习NHibernate的一些资源。也欢迎大家加入NHibernate中文社区

    这个系列我使用NHibernate官方2009年10月31日最新发布的NHibernate-2.1.1.GA版本。开发环境是Microsoft Visual Studio 200 SP1/Microsoft Visual Studio 2010、SQL Server 2008 Express和集成测试插件TestDriven.NET。如果你第一次使用NHibernate,先到这里下载NHibernate最新版本(包括源码、发布版本、参考文档、API文档,可选择下载)。如果用到NHibernate的扩展项目到这里下载获得NHibernate Contrib最新版本。NHibernate-2.1.1.GA是.NET2.0平台的最后一个版本,关于NHibernate-2.1.1.GA的更多信息请点击这里

    NHibernate是什么

    NHibernate 是一个面向.NET 环境的对象/关系数据库映射工具。对象关系映射(O/R Mapping,Object Relational Mapping)表示一种技术,用来把对象模型表示的对象映射到基于SQL 的关系模型数据结构中去。

    NHibernate不仅仅管理.NET 类到数据库表的映射(包括.NET 数据类型到SQL 数据类型的映射),还提供数据查询和获取数据的方法,大幅度减少我们开发时人工使用SQL和ADO.NET处理数据的时间。NHibernate的目标是对于开发者通常的数据持久化相关的编程任务,解放其中的95%。并请记住NHibernate作为数据库访问层,是与你的程序紧密集成的。

    NHibernate的架构

    你知道NHibernate到底什么样子?下面我摘取官方文档中的三幅不同的结构图稍做说明。

    第一幅图:NHibernate体系结构非常抽象的概览

    概览

    这幅图展示了NHibernate在数据库和应用程序之间提供了一个持久层。

    第一幅图好像非常简单?其实NHibernate是比较复杂的。我们了解两种极端情况,轻量级和重量级架构。再来第二幅图:轻量级体系,应用程序自己提供ADO.NET连接,并且自行管理事务。

    轻量级体系

    最后一张图:重量级体系:所有的底层ADO.NET API都被抽象了。

    重量级体系

    NHibernate资源

    NHibernate资源现在已经比较多了,但是大部分都是英文了,这里我仅仅挑选几个站点。

    NHibernate专题:http://kb.cnblogs.com/zt/NHibernate/ (中文)

    NHibernate官方主页:http://www.nhforge.org/(英文)

    NHibernate参考文档2.1.1GA:http://nhforge.org/doc/nh/en/(英文) 社区有中文文档下载。

    NHibernate之夏系列录像教程:http://www.summerofnhibernate.com/(英文)

    欢迎加入NHibernate中文社区

    http://space.cnblogs.com/group/NHibernate

    为什么叫做NHibernate中文社区呢?原因很简单,体现本地化。现在关于NHibernate很多的资料都是英文资料,中文资料少的可怜了也不是很完整,我们努力建立在这个小组建立起来属于大家的NHibernate中文社区,在这里一起讨论NHibernate、学习NHibernate。

    如果你使用NHibernate,学习NHibernate,欢迎加入这个小组,一起讨论NHibernate、学习NHibernate,一起建立NHibernate中文社区

  • 相关阅读:
    从开发人员角度对软件测试的些许理解
    ObjectiveC的语法
    HttpModule与HttpHandler使用
    我为什么学习HASKELL?
    Linux下C语言编程环境Make命令和Makefile
    一个简单的验证框架
    程序员之路
    ObjectiveC语法之ObjectiveC语言和IOS系统(简介,语法,系统结构)
    Teamcity
    Python进阶 错误处理
  • 原文地址:https://www.cnblogs.com/siyunianhua/p/3984588.html
Copyright © 2011-2022 走看看