写在前面:

  配置实体类与数据库的映射关系,有两种方式:

  1.使用*.hbm.xml

   2.使用@注解

  二:xml的配置方式:

  eg:员工的xml配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC
'-//Hibernate/Hibernate Mapping DTD 3.0//EN'
'http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd'>
<hibernate-mapping> <class name="edu.hue.erp.auth.emp.vo.EmpModel" table="tbl_emp">
<!-- id为主键的配置:
id-name:实体类中的属性名
column-name:数据库表中主键名
generator-class:主键生成策略 -->
<id name="uuid" >
<!-- 数据库表中主键字段名与实体类的属性名相同时,column可以省略不写 -->
<!-- <column name="uuid"></column> -->
<generator class="native"></generator>
</id> <!-- property:非主键属性的配置
property-name:实体类中属性名
column-name:实体类中属性对应的数据库表中字段名
-->
<!-- 数据库表中主键字段名与实体类的属性名相同时,column可以省略不写 -->
<!-- <property name="username">
<column name="username"/>
</property> -->
<property name="username"/>
<property name="pwd"/>
<property name="name"/>
<property name="tele"/>
<property name="address"/>
<property name="email"/>
<property name="gender"/>
<property name="birthday"/>
<property name="lastLoginTime"/>
<property name="lastLoginIp"/>
<property name="loginTimes"/> <!-- 员工对部门 多对一的关系 -->
<!-- name:与员工实体类中含有的部门对象名一致
column:员工表中的外键(部门的主键)
class:一方 中 类的全路径 -->
<many-to-one
name="dm"
column="depUuid"
class="edu.hue.erp.auth.dep.vo.DepModel"
/> <!-- 员工对角色 多对多 -->
<!-- name:与员工实体类中含有的角色对象名一致
table:中间表名
key-column:员工表的主键
many-to-many--column:角色主键
many-to-many--class:角色类的全路径 -->
<set name="roles" table="tbl_emp_role">
<key column="empUuid"/>
<many-to-many column="roleUuid" class="edu.hue.erp.auth.role.vo.RoleModel"/>
</set> </class>
</hibernate-mapping>
<!-- 另外补充在部门的配置文件中: //部门对员工 一对多
//private Set<Employee> emps; 当进行级联删除时
一方对象首先要放弃与多方之间的关系,转化为将外键字段设置为null
如果此时外键字段设置为不允许为null,引发下列异常
java.sql.BatchUpdateException:Column 'depUuid' cannot be null
此时只需要在进行关系维护时,使一方对象不对关系进行维护即可,不操作外键——————inverse=true <set name="emps" cascade="delete" inverse="true">
<key column="depUuid"/>
<one-to-many class="edu.hue.erp.auth.emp.vo.EmpModel"/>
</set>
//注意部门对员工一对多与员工对部门多对一中的column是一致的
-->

天啦 真是丧尽天良啊。。。。少于150字不允许被发布出去不允许被发布出去不允许被发布出去。。。。。。。。。。

真的是,难道插入的代码不算字数的么。。。。。好。。很好。。。那我们就来一起凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑

凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑凑

够这150字。。。

 

Hibernate--使用xml配置映射关系的更多相关文章

  1. hibernate hbm.xml配置映射

    <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...

  2. Hibernate中的一对一映射关系

    Hibernate中的一对一映射关系有两种实现方法(单向一对一,和双向一对一)(一对一关系:例如一个department只能有一个manager) 单向和双向有什么区别呢??例如若是单向一对一,比如在 ...

  3. Hibernate入门3.配置映射文件深入

    Hibernate入门3.配置映射文件深入 2013.11.27 前言: 之前的两节是在Java项目中如何使用hibernate,并且通过一个简单地项目实践,期间有很多的错误,一般都是因为配置包的问题 ...

  4. 第二节:创建模型,使用Code First,配置映射关系

    这一节,实现模型的创建,配置映射关系 使用Code First数据迁移. 创建模型 一,首先创建几个接口:实体接口,聚合根接口,值对象接口 1,实体接口: 2,聚合根接口: 3,值对象接口: 二,模型 ...

  5. C# 数据操作系列 - 6 EF Core 配置映射关系

    0. 前言 在<C# 数据操作系列 - 5. EF Core 入门>篇中,我们简单的通过两个类演示了一下EF增删改查等功能.细心的小伙伴可能看了生成的DDL SQL 语句,在里面发现了些端 ...

  6. Hibernate框架 主配置文件(Hibernate.cfg.xml) 映射配置 说明

    Hibernate.cfg.xml 主配置文件中主要配置:数据库连接信息.其他参数.映射信息! 常用配置查看源码: hibernate-distribution-3.6.0.Final\project ...

  7. hibernate基于注解实现映射关系的配置

    关联关系的配置步骤 ①要理清楚管理关系 ②确定管理依赖关系的哪一方 1一对一例如:person 和IdCard ①确定依赖关系:一对一 ②依赖关系由person类管理代码如下: person: @En ...

  8. hibernate.cfg.xml 配置(摘录)

    配置文件中映射元素详解 对象关系的映射是用一个XML文档来说明的.映射文档可以使用工具来生成,如XDoclet,Middlegen和AndroMDA等.下面从一个映射的例子开始讲解映射元素,映射文件的 ...

  9. SSH框架之Hibernate(1)——映射关系

    ORM的实现思想就是将关系数据库中表的数据映射成对象.以对象的形式展现,这样开发者就能够把对数据库的操作转化为对这些对象的操作.Hibernate正是实现了这样的思想,达到了方便开发者以面向对象的思想 ...

随机推荐

  1. Go基础篇【第5篇】: 内置库模块 exec

    Package exec runs external commands. It wraps os.StartProcess to make it easier to remap stdin and s ...

  2. SHA1 安全哈希算法(Secure Hash Algorithm)

    安全哈希算法(Secure Hash Algorithm)主要适用于数字签名标准 (Digital Signature Standard DSS)里面定义的数字签名算法(Digital Signatu ...

  3. vim操作命令

    一,命令模式下 文件顶部: gg 文件底部: G 删除当前行:dd 删除当前行,并进入INSERT模式: cc 取消删除:u

  4. Bitmap.Config 说明 ALPHA_8 ARGB_4444 ARGB_8888 RGB_565

    这篇文章的目的是了解Bitmap.Config 你可以在使用这个方法的时候会遇到 Bitmap android.graphics.Bitmap.createBitmap(int width, int ...

  5. 支持多用户web终端实现及安全保障(nodejs)

    背景 笔者近期从事在线IDE工作的开发,作为本地IDE普遍拥有的功能,terminal(命令行)对项目的git操作以及文件操作有着非常强大的支持.而之前没有web伪终端的情况下,仅仅提供已封装好的gi ...

  6. redis字符串结构

    1.字符串SDS struct sdshdr { // buf 已占用长度 int len; // buf 剩余可用长度 int free; // 实际保存字符串数据的地方 // 利用c99(C99 ...

  7. C语言之for循环

    #include<stdio.h>#include<stdlib.h>#include<time.h>int main(){ int i; for(i=1;i< ...

  8. Activity讲解

    Activity Activity 是 Android 应用的重要组成单元之一(另外三个是 Service.BroadcastReceiver 和 ContentProvider),而 Activit ...

  9. Unity塔防游戏开发

    Unity3D塔防开发流程 配置环境及场景搭建编程语言:C#,略懂些许设计模式,如果不了解设计模式,BUG More开发工具:Unity3D编辑器.Visual Studio编译器开发建议:了解Uni ...

  10. 拓扑排序&关键路径

    拓扑排序:AOV网 概念 example:选课问题:AOV网 顶点活动(Activity On Vertex)网是指用顶点表示活动,而用边集表示活动关系的有向图. 在这个例子中,课程为结点,而有向边表 ...