- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
NHibernate简单配置过程_精品
NHibernate 系列研究
日期:2007年05月21日?来源:BLOG?作者:罗江华?添加:伊扬.NET教程网 得分:3.00 难度:
NHibernate NHibernate 是一个基于.Net 的针对关系型数据库的对象持久化类库。Nhibernate 来源于非常优秀的基于Java的Hibernate 关系型持久化工具。
NHibernate 从数据库底层来持久化你的.Net 对象到关系型数据库。NHibernate 为你处理这些,远胜于你不得不写SQL去从数据库存取对象。你的代码仅仅和对象关联,NHibernat 自动产生SQL语句,并确保对象提交到正确的表和字段中去。 ?
?
任何熟悉Hibernate的人会发现这篇文章和Glen Smith 的 A Hitchhikers Guide to Hibernate 非常相近。这里的内容正是基于他的指南,因此所有的感谢都应该给与他。
NHibernate的文档并非每处都和Hibernate的文档一致。然而,项目的相似应该能使读者通过读Hibernate的文档来很好的理解NHibernate如何工作。
这篇文章意在让你尽可能快的开始使用NHibernate。它将介绍如何持久化一个简单的对象到一张表里。想得到更多的复杂的例子,可以参考NUnit测试及附带代码。 ?
?
Nhibernate未来将会提供一些工具帮助你自动产生schema文件(现在还是基于代码)或是通过映射文件产生类(在筹措阶段)或是更新schema(来自于一个新开发者的建议)。然而,这里我们的例子是假定一切来自于完全手写,包括设置表和.Net类的编写。我们将进行以下步骤。
1.新建一个将要持久化.Net对象的表
2.构建一个需要被持久化的.Net类
3.构建一个可以让NHibernate知道如何持久化对象属性的映射文件
4.构建一个让NHibernate知道如何连接数据库的配置文件]
5.使用NHibernate的 API
SQL
?
这里我们将使用的是一个非常简单的例子。假设你正在为你的网站开发一个基本的用户管理子系统。我们将使用如下的一张User表(假定你已经设置好一个数据库—在的例子里我称它为NHibernate)。
use ?NHibernatego CREATE ? TABLE ?users?(??LogonID? nvarchar ( 20 )? NOT ? NULL ? default ? 0 ,??Name? nvarchar ( 40 )? default ? NULL ,??Password? nvarchar ( 20 )? default ? NULL ,??EmailAddress? nvarchar ( 40 )? default ? NULL ,??LastLogon? datetime ? default ? NULL ,?? PRIMARY ? KEY ??(LogonID))go
我使用的是MS Sql Server 2000, 但也可以使用任何数据库,只要你有关于它们的基于.Net数据提供驱动程序。我们将得到一个含有LogonID,Name, Password, Email 和LastLogon的表. 经过以上标准步骤,我们下一步是写一个.Net类处理一个给定的User对象。
?
第二步:产生一个.Net 类文件
?
当内存中有一堆User对象的时候,我们需要某种对象去保存它们。NHibernate通过对象属性的反射来工作,因此我们需要添加我们希望持久化的对象属性。一个可以被NHibernate持久化的类应该看起来象下面的样子:
using ?System;namespace ?NHibernate.Examples.QuickStart{???? public ? class ?User????{???????? private ? string ?id;???????? private ? string ?userName;???????? private ? string ?password;???????? private ? string ?emailAddress;???????? private ?DateTime?lastLogon;???????? public ?User()????????{????????}???????? public ? string ?Id????????{???????????? get ?{? return ?id;?}???????????? set ?{?id? = ?value;?}????????}????????
您可能关注的文档
- 古树名木保护措施 拙政园古树名木监测预警标准与保护措施研究_精品.doc
- 南京信息工程大学科研经费报销注意事项_精品.doc
- 妇产科护理个案_精品.doc
- 企业客服部员工培训手册_精品.doc
- 公司私车公用管理制度_精品.doc
- 冷链物流论文内容_精品.doc
- 供应商评价准则_精品.doc
- 名老中医治疗胃病绝技_精品.doc
- 公司、总经理年终致辞_精品.doc
- 七年级上品德下册课本答案_精品.doc
- 2021-2022学年湖南省常德市安乡县四年级上学期期中语文真题及答案.pdf
- 2023-2024学年河南省南阳市社旗县四年级上学期期中数学真题及答案.pdf
- 2022-2023学年云南省曲靖市四年级下学期期末数学真题及答案.pdf
- 2021-2022学年河南省周口市鹿邑县二年级下册月考语文真题及答案.pdf
- 2018年河南焦作解放区教师招聘考试真题及答案.pdf
- 2019年江西公务员行测考试真题及答案-乡镇.pdf
- 2019中国石油报社应届高校毕业生招聘试题及答案解析.pdf
- 光大银行招聘应届毕业生能力素质测试笔试真题及答案.pdf
- 2024年广西百色教师招聘考试模拟题及答案.pdf
- 2021-2022学年浙江绍兴诸暨市五年级上册语文期末试卷及答案.pdf
最近下载
- 益电通TD80变频器调试参数设置资料2.1.pdf
- 《孕产妇健康管理》课件.pptx VIP
- 金融科技创新的成功案例与市场反馈剖析实例分享与评估培训.pptx
- 古代文学参考答案完整版.pdf VIP
- 2022-2023学年广东省惠州市大亚湾区九年级(上)期末物理试卷(含解析).doc VIP
- 5.1+走近老师+课件-2024-2025学年统编版道德与法治七年级上册 (1).pptx VIP
- 粤沪版八年级物理上册:3.3“探究平面镜成像特点”过关检测练习题.docx VIP
- 安全教育认识投资理财诈骗.pptx
- 新课标人教版小学数学六年级下册全册教学反思推荐.doc
- 警惕虚假虚拟货币投资诈骗.pptx
文档评论(0)