菜鸟学Nhibernate 之路---(1)
首先说一下我为什么要学这个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)的更多相关文章
- 菜鸟学自动化测试(八)----selenium 2.0环境搭建(基于maven)
菜鸟学自动化测试(八)----selenium 2.0环境搭建(基于maven) 2012-02-04 13:11 by 虫师, 11419 阅读, 5 评论, 收藏, 编辑 之前我就讲过一种方试来搭 ...
- JVM菜鸟进阶高手之路十(基础知识开场白)
转载请注明原创出处,谢谢! 最近没有什么实战,准备把JVM知识梳理一遍,先以开发人员的交流来谈谈jvm这块的知识以及重要性,依稀记得2.3年前用solr的时候老是经常oom,提到oom大家应该都不陌生 ...
- JVM菜鸟进阶高手之路十三(等你来战!!!)
转载请注明原创出处,谢谢! 前几天有个朋友问了我个问题,下面给大家分享下,希望大家积极在评论区进行评论留言,等你来战!!! 先来个趣味题,热身下,引出后面的jvm题目. 地上的影子是那个人的? 地上的 ...
- JVM菜鸟进阶高手之路十四:分析篇
转载请注明原创出处,谢谢! 题目回顾 JVM菜鸟进阶高手之路十三,问题现象就是相同的代码,jvm参数不一样,表现的现象不一样. private static final int _1MB = 1024 ...
- 菜鸟学IT之四则运算升级版
菜鸟学IT之四则运算升级版 本次作业要求来自:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2213 团队代码github远程仓库的 ...
- 菜鸟学Java(十五)——Java反射机制(二)
上一篇博文<菜鸟学编程(九)——Java反射机制(一)>里面,向大家介绍了什么是Java的反射机制,以及Java的反射机制有什么用.上一篇比较偏重理论,理论的东西给人讲出来总感觉虚无缥缈, ...
- 菜鸟学Java(十四)——Java反射机制(一)
说到反射,相信有过编程经验的人都不会陌生.反射机制让Java变得更加的灵活.反射机制在Java的众多特性中是非常重要的一个.下面就让我们一点一点了解它是怎么一回事. 什么是反射 在运行状态中,对于任意 ...
- 大家一起来学 NHibernate+NUnit (VS2012+SQL Server2008)
大家一起来学 NHibernate+NUnit (VS2012+SQL Server2008) 分类: C#2013-08-10 18:47 1589人阅读 评论(5) 收藏 举报 NHibernat ...
- JVM菜鸟进阶高手之路一[z]
https://mp.weixin.qq.com/s/qD1LFmsOiqZHD8iZX97OfA? 问题现象 代码如下,使用 ParNew + Serial Old 回收器组合与使用 ParNew ...
随机推荐
- python selenium cookie 登录
概要: 1.正常登录,使用selenium获取cookie: 2.保存cookie: 3.使用cookie登录. 4.python--2.7,selenium--3.4.1 步骤1 正常登录,使用se ...
- HTML 获取屏幕,浏览器,页面的高度
1,物理尺寸和分辨率 容器的尺寸是指当前分辨率下的高度.宽度,而不是物理高度.宽度. 如:一个22寸的显示器,屏幕分辨率为1366 * 768,那么获取到的屏幕高度为1366px,宽度为768px. ...
- Centos下MySQL数据库主从双向同步配置
MYSQL支持单向.异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器.主服务器将更新写入二进制日志文件,并维护日志文件的一个索引以跟踪日志循环.当一个从服务器连接到主服务 ...
- ZOJ - 3705 Applications 【模拟】
题目链接 http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3705 题意 给出N个队员 然后一个教练要从中选择 M名队员 要选 ...
- Elasticsearch的几种架构(ELK,EL,EF)性能对比测试报告
Elasticsearch的几种架构性能对比测试报告 1.前言 选定了Elasticsearch作为存储的数据库,但是还需要对Elasticsearch的基础架构做一定测试,所以,将研究测试报告输出如 ...
- 每天一个Linux命令(29)du命令
du命令是对文件和目录磁盘使用的空间的查看. (1)用法: 用法: du [选项] [文件] (2)功能: 功能: 报告磁盘空间使用情况 (3) ...
- C#转换人民币大写金额
/// <summary> /// 转换人民币大写金额. /// </summary> public class RMBConverter { /// <summary& ...
- Ansible 实战之部署Web架构
WEB架构(ubuntu 16.04): Proxy -- WebServer(Nginx+PHP+Django) -- Nosql -- MariaDB 一. 定义Inventory [proxy] ...
- 大话设计模式--组合模式 Composite -- C++实现实例
1. 组合模式: 将对象组合成树形结构以表示"部分--整体"的层次结构,组合模式使用户对单个对象和组合对象的使用具有一致性. 需求中是体现部分与整体层次的结构时,希望用户可以忽略组 ...
- 大话设计模式--原型模式 Prototype -- C++实现
1. 原型模式: 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象... 注意: 拷贝的时候是浅拷贝 还是 深拷贝, 来考虑是否需要重写拷贝构造函数. 关键在于: virtual Pro ...