首先说一下我为什么要学这个Nhibernate,现在在公司做项目后台的逻辑层都是用动软生成的简单三层,搞来搞去都是这些东西,代码冗余量很大,每个类方法基本上都一样,真是纯正的码农,虽然后来我也尝试使用抽象类、虚方法等来减少代码量(用这些才感觉是在编程,呵呵),但是这些写多了也没意思啊,于是就想找一个逻辑层的框架来减少体力劳动量,于是想公司的一个前辈来表达我这方法的苦恼(他现在是项目经理,不是跟我一个部门的),他提出来用ORM框架,ORM是啥东东?于是百度了一番(原谅我不喜欢用Google....谷歌搜英文不错,但是我学了那么多年的英语,考试从来靠懵啊....),一番结果下来之后我就记住了EF和Nhibernate,之前学MVC,看教程是使用EF框架的,当时挺反感的,觉得太麻烦,不如写三层方便......简单的又看了写EF的介绍,可以说基础是LINQ吧。。。但是我不会LINQ,所以就打算学Nhibernate了。。。。

刚学几天,先说一下学的感受,第一是网上的资料太少,有些问题根本搜不出来解决方法,谁让咱用的是GA3.3.3呢,可能版本太高了,低版本的跟这个版本的不一样,无从下手,花费了一番心血,找到了几篇博客,于是就开始入门!

参考:http://blog.csdn.net/jiajiayouba/article/details/9877875

按照方法一步一步来,这个配置映射类就可以生成表的功能很让我兴奋,但是按照上面的方法确确生成不了表,网上说,cfg.ClassMappings.Count=  1就表示映射成功,但是我这边一直输出0,也不报错,搞不清哪里的问题,真心蛋碎一地,搞了几天不知所措

文笔不好,直接上解决方法了,

原先我的映射名为:Student.dbm.xml ,原来后面的结尾格式必须为**.hbm.xml,我嘞个擦,这么坑爹,虽然我是左撇子,但也要为自己的智商默哀。。。。

这里做一下小小的总结:

Nhibernate的配置文件hibernate.cfg.xml 属性中的“复制到输出目录”必须改为:“始终复制”

hibernate.cfg.xml文件中</session-factory>上面必须加入:<mapping assembly="Domain"/>(官方包中的模板文件中没有加这一行),可以理解为指定映射类的程序集名称吧?

实体类的get、set方法需要指明为虚方法: public virtual int ID { get; set; }

实体类的映射文件Student.hbm.xml格式为**.hbm.xml,否则就是我上面的说的那种问题了,并且这个xml的属性"生成操作"改为:“嵌入的资源”

hibernate.cfg.xml 和******.hbm.xml文件中的assembly=“”内容要一直,*****.hbm.xml中的namespace属性指定对应的实体类所在的命名空间

菜鸟学Nhibernate 之路---(1)的更多相关文章

  1. 菜鸟学自动化测试(八)----selenium 2.0环境搭建(基于maven)

    菜鸟学自动化测试(八)----selenium 2.0环境搭建(基于maven) 2012-02-04 13:11 by 虫师, 11419 阅读, 5 评论, 收藏, 编辑 之前我就讲过一种方试来搭 ...

  2. JVM菜鸟进阶高手之路十(基础知识开场白)

    转载请注明原创出处,谢谢! 最近没有什么实战,准备把JVM知识梳理一遍,先以开发人员的交流来谈谈jvm这块的知识以及重要性,依稀记得2.3年前用solr的时候老是经常oom,提到oom大家应该都不陌生 ...

  3. JVM菜鸟进阶高手之路十三(等你来战!!!)

    转载请注明原创出处,谢谢! 前几天有个朋友问了我个问题,下面给大家分享下,希望大家积极在评论区进行评论留言,等你来战!!! 先来个趣味题,热身下,引出后面的jvm题目. 地上的影子是那个人的? 地上的 ...

  4. JVM菜鸟进阶高手之路十四:分析篇

    转载请注明原创出处,谢谢! 题目回顾 JVM菜鸟进阶高手之路十三,问题现象就是相同的代码,jvm参数不一样,表现的现象不一样. private static final int _1MB = 1024 ...

  5. 菜鸟学IT之四则运算升级版

     菜鸟学IT之四则运算升级版 本次作业要求来自:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2213 团队代码github远程仓库的 ...

  6. 菜鸟学Java(十五)——Java反射机制(二)

    上一篇博文<菜鸟学编程(九)——Java反射机制(一)>里面,向大家介绍了什么是Java的反射机制,以及Java的反射机制有什么用.上一篇比较偏重理论,理论的东西给人讲出来总感觉虚无缥缈, ...

  7. 菜鸟学Java(十四)——Java反射机制(一)

    说到反射,相信有过编程经验的人都不会陌生.反射机制让Java变得更加的灵活.反射机制在Java的众多特性中是非常重要的一个.下面就让我们一点一点了解它是怎么一回事. 什么是反射 在运行状态中,对于任意 ...

  8. 大家一起来学 NHibernate+NUnit (VS2012+SQL Server2008)

    大家一起来学 NHibernate+NUnit (VS2012+SQL Server2008) 分类: C#2013-08-10 18:47 1589人阅读 评论(5) 收藏 举报 NHibernat ...

  9. JVM菜鸟进阶高手之路一[z]

    https://mp.weixin.qq.com/s/qD1LFmsOiqZHD8iZX97OfA? 问题现象 代码如下,使用 ParNew + Serial Old 回收器组合与使用 ParNew ...

随机推荐

  1. JavaScript螺旋矩阵

    螺旋矩阵                                                           螺旋矩阵指一个呈螺旋状的矩阵,其数字由第一行开始到右边不断变大,向下变大, ...

  2. linux 指令(经常更新)

    添加一个服务 # sudo update-rc.d 服务名 defaults 99 删除一个服务 # sudo update-rc.d 服务名 remove 临时重启一个服务 # /etc/init. ...

  3. python cookbook 迭代器与生成器

    代理迭代 a = [1, 2, 3] for i in iter(a): print(i) for i in a.__iter__(): print(i) 这里的两个方法是一样的,调用iter()其实 ...

  4. 通过套接字(socket)和UDP协议实现网络通信

    UDP---用户数据报协议,是一个简单的面向数据报的运输层协议.(无连接.封包.大小限制.速度快). 一.UDP协议的特点: 将数据及源和目的地封装成数据包中,不需要建立连接. 每个数据报的大小限制在 ...

  5. Linux LVM管理

    创建和管理LVM 要创建一个LVM系统,一般需要经过以下步骤: 1. 创建分区 fdisk /dev/sdb 使用分区工具(如:fdisk等)创建LVM分区,方法和创建其他一般分区的方式是一样的,区别 ...

  6. <HTTP协议详解>由浅入深看HTTP

    一. HTTP协议的应用简单概况 HTTP协议的主要特点可概括如下: 1.支持客户/服务器模式.2.简单快速:客户向服务器请求服务时,只需传送请求方法和路径.请求方法常用的有GET.HEAD.POST ...

  7. 2.微信小程序-B站:需要先知道这些

    文件结构 小程序包含一个描述整体程序的 app 和多个描述各自页面的 page.一个小程序主体部分由三个文件组成,必须放在项目的根目录,如下: 文件 必须 作用 app.js 是 小程序逻辑 app. ...

  8. css 采集下载

    软件应用范围: 看到喜欢的网页,另存为的话,并不能直接保存css中引用的图片. 那么就有了本软件的用武之地. 亮点:自动匹配文件内的相对路径.css内图片地址值md5保存,用来避免不同文件夹同名文件的 ...

  9. BZOJ 2243 [SDOI2011]染色:树剖【维护路径上颜色段】

    题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2243 题意: 给定一棵有n个节点的无根树和m个操作,操作有2类: 1.将节点a到节点b路径 ...

  10. 英语发音规则---(e)s和-(e)d的读音规则

    英语发音规则---(e)s和-(e)d的读音规则 一.总结 一句话总结: 1.大部分可数名词的复数及动词第三人称单数的一般现在式,是以-(e)s结尾的? moths,glasses:digs,teac ...