hibernate复合主键
需要用到实体类Role的主键和Menu的主键结合起来作为实体类RoleMenu的主键,那么通过Hibernate具体实现如下:
RoleMenu实体类:(注意该实体类需要实现Serializable接口),且在Hibernate.cfg.xml文件中,复合主键用到的类的映射的xml文件需要放在改类映射的xml文件之前。
package com.cdms.model; import java.io.Serializable; /**
* 角色权限类
* @author MY
*
*/
public class RoleMenu implements Serializable { /**
*
*/
private static final long serialVersionUID = 1L; private Role role;//角色ID
private MenuInfo menuInfo;//菜单id public Role getRole() {
return role;
}
public void setRole(Role role) {
this.role = role;
}
public MenuInfo getMenuInfo() {
return menuInfo;
}
public void setMenuInfo(MenuInfo menuInfo) {
this.menuInfo = menuInfo;
} }
RoleMenu.hbm.xml文件:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- Generated 2016-11-24 20:04:53 by Hibernate Tools 3.5.0.Final -->
<hibernate-mapping>
<class name="com.cdms.model.RoleMenu" table="tb_roleMenu">
<composite-id>
<key-many-to-one name="menuInfo" class="com.cdms.model.MenuInfo">
<column name="rm_menuInfoId" />
</key-many-to-one>
<key-many-to-one name="role" class="com.cdms.model.Role">
<column name="rm_roleId" />
</key-many-to-one> </composite-id>
</class>
</hibernate-mapping>
hibernate复合主键的更多相关文章
- Hibernate复合主键映射
目录: 1. 实现方式一:将复合主键对应的属性与实体其他普通属性放在一起 2. 实现方式二:将主键属性提取到一个主键类中,实体类只需包含主键类的一个引用 在日常开发中会遇到这样一种情况,数据库中的某张 ...
- Hibernate复合主键的注解
[转自] http://blog.csdn.net/happylee6688/article/details/17636801 最近做项目用到了Hibernate框架,采用了纯面向对象的思想,使用OR ...
- Hibernate 表映射 主键生成策略与复合主键
主要分析三点: 一.数据表和Java类的映射 : 二.单一主键映射和主键的生成策略 : 三.复合主键的表映射 : 一.数据表和Java类的映射 Hibernate封装了数据库DDL语句,只需要将数据 ...
- Hibernate征途(七)之复合主键映射和集合映射
把这两种映射放到一起说,是因为这两种映射不像前面的复用型映射.数量和方向型映射那么分类鲜明,所以放到了这个“其他”里面. 复合主键映射 在关系模型中,复合主键和其他的主键方式没有很大区别,但是反映到对 ...
- 步步为营Hibernate全攻略(四)剪不断理还乱之:复合主键 && 组合映射
一:复合主键 复合主键即两个或多个字段联合起来作为主键,它的通常做法是将主键相关字段抽取出来放到一个单独的类中,但是这样的类是有要求的: 1. 必须实现序列化接口 2. 必须覆盖e ...
- 【Hibernate步步为营】--复合主键映射具体解释
上篇文章讨论了继承映射,它是对象模型中最主要的特性,对于继承映射它的主要区分是字段类型的不同,所以在生成表结构时须要有新列来标识数据的类型,能够使用<subclass>标签并在标签中加入d ...
- Hibernate第三篇【主配置文件、映射文件、复合主键映射】
前言 目前已经学了如何搭建Hibernate的开发环境,以及Hibernate对应的API了-在快速入门还没讲解的就是配置文件是怎么配置的.因此,本博文主要讲解主配置文件以及映射配置文件.. 主配置文 ...
- Hibernate主配置文件、映射配置文件以及复合主键查询
Hibernate.cfg.xml主配置文件 主配置文件中主要配置:数据库连接信息.其他参数.映射信息! 常用配置查看源码: hibernate-distribution-3.6.0.Final\pr ...
- 【hibernate/JPA】注解方式实现 复合主键【spring boot】
1>hibernate/JPA实现复合主键的思路:是将所有的主键属性封装在一个主键类中,提供给需要复合主键的实体类使用. 2>主键类的几点要求: . 使用复合主键的实体类必须实现Seria ...
随机推荐
- 开始使用Pyhton
安装 第一个Python程序 首先我们打开python 交互式解释器, 执行如下命令: Python 3.5.1+ (default, Mar 30 2016, 22:46:26) [GCC 5.3. ...
- JSON.stringify的使用方法
语法: JSON.stringify(value [, replacer] [, space]) value:是必须要的字段.就是你输入的对象,比如数组啊,类啊等等. replacer:这个是可选的. ...
- urllib+BeautifulSoup无登录模式爬取豆瓣电影Top250
对于简单的爬虫任务,尤其对于初学者,urllib+BeautifulSoup足以满足大部分的任务. 1.urllib是Python3自带的库,不需要安装,但是BeautifulSoup却是需要安装的. ...
- Java命名规范基础
一.java命名规范 1.类和接口:由多个单词组成时,所有单词的首字母大写,如TestJava 2.变量名和方法(函数):由多个单词组成时,所有第一个单词的首字母小写,之后每一个单词的首字母大写,如: ...
- 基于.NET平台常用的框架整理【转】
转:http://www.cnblogs.com/hgmyz/p/5313983.html 自从学习.NET以来,优雅的编程风格,极度简单的可扩展性,足够强大开发工具,极小的学习曲线,让我对这个平台产 ...
- stl::map之const函数访问
如何在const成员数中访问stl::map呢?例如如下代码: string ConfigFileManager::MapQueryItem(const string& name) const ...
- 支持Cookie并开放了一些特殊设置项的HttpWebClient
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.N ...
- 关于C#循环图片GDI+内存不足异常的记录
循环大量图片的时候会报出GDI+内存不足的问题,这个问题困扰了我很久,下面是我的几个解决方案: 使用using(){}代码块来定义需要释放内存的变量.using代码块会在代码结束的时候释放变量,但是并 ...
- 自定义 Activity 的 标题栏 TitleBar
自定义 Activity 的 标题栏 TitleBar 1. 修改标题栏的高度,背景 编辑styles.xml,添加: <?xmlversion="1.0" encoding ...
- NLog配置文件写入数据库中
NLog配置文件: <target xsi:type="Database" name="database" connectionString=" ...