关于NHibernate实体和hbm.xml的那些错误

NHibernate中,一个实体对应一个hbm.xml,刚开始的时候,觉得实体写好了,hbm.xml写好了,数据库表生成好了,那么就完了,后面的事就简单了,剩下的仅是写逻辑代码了,可是,让我没想到,在数据库表生成完后,紧接着在写逻辑代码过程中,关于hbm.xml和实体报出来的错误,让我着实上火、恶心,现在将我遇到的一些错误分享出来,希望能给你的工作带来警戒和方便。

错误一:

原因:

TimeStamp是关键字;

数据库中的字段和实体字段不匹配

错误二:

原因:

实体名称不一致,此时你的hbm.xml映射的应该是ShortAnswerQuestionRecordEntity而你可能却写成了ShortAnswerQuestionEntity。

错误三:

原因:仔细检查你的hbm.xml,这个时候你的hbm.xml可能有重复的property

错误四:

原因:仔细检查hbm.xml和实体,看看hbm.xml与实体中的字段是否对应,可能你的实体中少了某一个hbm.xml对应的属性。

错误五:

这个错误让我纠结了半天,因为刚开始遇到过这个错误,一般都是hbm.xml的属性中的生成操作不是嵌入资源,于是思想就固定在这了,让我郁闷半天。。。。。

原因:

此时hbm.xml的属性中的生成操作可能不是嵌入的资源

切记实体应该对应的是hbm.xml,而不是xml

总结:

虽然这些都是些小错误,但这些小错误也会让你找好久,而且这些错误有时让你莫名其妙,而正是因为这些错误,让我更加的了解了NHibernate。接下来可能说还有一些关于hbm.xml和实体的一些错误,如果下次遇到了,会接着补进来。。。。。。。。

时间: 2024-10-14 16:39:03

关于NHibernate实体和hbm.xml的那些错误的相关文章

Hibernate tools 反向生成实体和hbm.xml文件

1 安装hibernate http://tools.jboss.org/downloads/overview.html 通过上面地址或者自己搜索hibernate tools官网找到update site 在eclipse 安装,安装中记住只选择hibernate tools部分即可 2 使用Hibernate tools 生成实体和hbm.xml文件 ① 创建 cfg.xml 右键工程 新建 接下来到对应页面,填写数据库信息生成文件 ② 配置console config ③ 创建reveng

NHibernate生成实体类、xml映射文件

最近工作电脑装完win10后,之前使用的codeSmith安装不了,索性自己写一个. 界面比较简单,如下图: 第一行为Oracle数据库的连接字符串.连接成功后,填充表到第4行的下拉列表中. 第二行为实体类命名空间. 第三行为保存生成类.xml文件选择文件夹. 1 private void btnConnect_Click(object sender, RoutedEventArgs e) 2 { 3 try 4 { 5 using (OracleConnection conn = new Or

hibernate笔记--实体类映射文件"*.hbm.xml"详解

实体类就是指普通的POJO,Hibernate并不知道那个实体类对应数据库的哪一张表,所以还需要配置一下,常用的方式就是*.hbm.xml文件[配置与@注解配置,这里介绍前者的详细属性: <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org

hibernate.cfg.xml配置文件和hbm.xml配置文件 模板

hibernate.cfg.xml配置文件格式 <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration

使用oracle数据库和MySQL数据库时hibernate的映射文件.hbm.xml的不同

如果是使用oracle数据库,那么hibernate的映射文件.hbm.xml如下: <id name="xuehao" column="xuehao"> </id> 这个id不是数据库自动生成的,这需要注意:而且这些字段必须和实体类中相对应,实体类中还需要对应的get()方法和set()方法. 因为oracle数据库中的id都是自动生成的,所以这里不需要写数据库的id,这和MySQL数据库有很大区别:另外,MySQL数据库建表时必须指明id

*.hbm.xml作用是什么

实体与表的映射关系通过XML来描述的文件.在 hibernate.cfg.xml中管理,在项目启动的时候加载到内存. hbm指的是hibernate的映射文件 映射文件也称映射文档,用于向Hibernate提供关于将对象持久化到关系数据库中的信息.持久化对象的映射定义可全部存储在同一个映射文件中,也可将每个对象的映射定义存储在独立的文件中.后一种方法较好,因为将大量持久化类的映射定义存储在一个文件中比较麻烦,建议采用每个类一个文件的方法来组织映射文档.使用多个映射文件还有一个优点:如果将所有映射

hibernate中的映射文件xxx.hbm.xml详解总结

转自 http://blog.csdn.net/a9529lty/article/details/6454924 一.hibernate映射文件的作用: Hibernate映射文件是Hibernate与数据库进行持久化的桥梁   二,Hibernate映射文件主要内容:     (1).映射内容的定义: Hibernate映射文件由<hibernate-mapping package="JavaBean所在包的全路径">节点定义映射内容并指定所对应的JavaBean的位置(

[原创]java WEB学习笔记81:Hibernate学习之路--- 对象关系映射文件(.hbm.xml):hibernate-mapping 节点,class节点,id节点(主键生成策略),property节点

本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 -----------------------------------------------------------------------------------------------------------------

Hibernate —— Entity.hbm.xml

一.简述 1.对象关系映射文件,用于映射实体类和关系数据库数据表之间的一个 xml 文件. 2.通过 Entity.hbm.xml 映射文件,Hibernate 可以理解持久化类和数据表之间的对应关系,也可以理解持久化类属性与数据表列之间的对应关系. 3.映射主键.映射关联关系. 二.各个节点 <hibernate-mapping> <class> <id></id> <property name=""></proper