Hibernate_day03--Hibernate多对多操作
Hibernate多对多操作
多对多映射配置
|
以用户和角色为例演示 第一步 创建实体类,用户和角色 第二步 让两个实体类之间互相表示 (1)一个用户里面表示所有角色,使用set集合
具体: User.java public class User {
(2)一个角色有多个用户,使用set集合
具体: Role.java public class Role {
第三步 配置映射关系 (1)基本配置 User.hbm.xml <hibernate-mapping> Role.hbm,xml <hibernate-mapping> (2)配置多对多关系 - 在用户里面表示所有角色,使用set标签 User,hbm.xml
- 在角色里面表示所有用户,使用set标签 Role.hbm.xml
第四步 在核心配置文件中引入映射文件
测试: 运行测试类 public class HibernateUtils {
|
多对多级联保存
|
根据用户保存角色 第一步 在用户配置文件中set标签进行配置,cascade值save-update,就不用另外保存角色了
第二步 写代码实现 (1)创建用户和角色对象,把角色放到用户里面,最终保存用户就可以了 public class HibernateManytoMany {
|
多对多级联删除(了解)
|
第一步 在set标签进行配置,cascade值delete 第二步 删除用户
|
维护第三张表关系
|
1 用户和角色多对多关系,维护关系通过第三张表维护 2 让某个用户有某个角色 第一步 根据id查询用户和角色 第二步 把角色放到用户里面 (1)把角色对象放到用户set集合
3 让某个用户没有某个角色 第一步 根据id查询用户和角色 第二步 从用户里面把角色去掉 (1)从set集合里面把角色移除
|
Hibernate_day03--Hibernate多对多操作的更多相关文章
- Hibernate多对多操作
---------------------siwuxie095 Hibernate 多对多操作 以用户和角色为例 (一)多对多映射配置 第一步:创建两个实体类,用户和角色 第二步:让两个实体类之间互相 ...
- hibernate 多对多操作(级联操作)
一.级联保存 分别在用户和角色配置文件中在set标签中加入cascade="save-update": 示例:添加同时添加用户对象和角色对象并关联两个对象: 只需将角色放入用户对象 ...
- hibernate多对一的操作解析
在hibernate的关联操作中有很多关系,其中多对一关系是最常见的.我们看这两个表. 这里有部门表和员工表. 那么我们可以这么说一个部门可以有多个员工.这就是1对多的关系.这是我们站在部门表的角度上 ...
- hibernate多对多关联映射
关联是类(类的实例)之间的关系,表示有意义和值得关注的连接. 本系列将介绍Hibernate中主要的几种关联映射 Hibernate一对一主键单向关联Hibernate一对一主键双向关联Hiberna ...
- hibernate多对一双向关联
关联是类(类的实例)之间的关系,表示有意义和值得关注的连接. 本系列将介绍Hibernate中主要的几种关联映射 Hibernate一对一主键单向关联Hibernate一对一主键双向关联Hiberna ...
- hibernate多对一单向关联
关联是类(类的实例)之间的关系,表示有意义和值得关注的连接. 本系列将介绍Hibernate中主要的几种关联映射 Hibernate一对一主键单向关联Hibernate一对一主键双向关联Hiberna ...
- hibernate 多对多
HibernateHibernate多对多关联映射通常别拆分成两个多对一关联映射1. 下面的HostBean.UserBean.UserHostBean,UserHostBean是两个表之间的关联表, ...
- hibernate 多对多 最佳实践
首先 看看我们 ER 画画 :盖 一对一 .一对多 .多对多 的关系 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvem91dG9uZ3l1YW4=/fo ...
- hibernate多对多的更新问题
错误原因 A different ]; nested exception ]] with root cause org.hibernate.NonUniqueObjectException: A di ...
随机推荐
- Android API之android.view.View.MeasureSpec
android.view.View.MeasureSpec MeasureSpec是View的内部类 public static class MeasureSpec MeasureSpec封装从par ...
- 【微信支付】公众号、商户基础配置和流程(包括设置支付授权目录、测试支付目录和白名单、JS接口安全域名、授权回调域名等)
一.使用场景以及说明 使用场景:商户已有H5商城网站,用户通过消息或扫描二维码在微信内打开网页时,可以调用微信支付完成下单购买的流程. 说明:1.用户打开图文消息或者扫描二维码,在微信内置浏览器打开网 ...
- maven常用的一些依赖
<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit ...
- fatal error LNK1123: 转换到 COFF 期间失败:文件无效或损坏
问题出现背景: 原本电脑里是装着VS2015的,其使用的是.NET 4.5,当再安装VS2010之后,不能与当前的.NET平台兼容.卸载VS2015时,不会恢复.NET 4.0. l 当VS2015安 ...
- SQL 横转竖 、竖专横 (转载) 使用Dapper.Contrib 开发.net core程序,兼容多种数据库 C# 读取PDF多级书签 Json.net日期格式化设置 ASPNET 下载共享文件 ASPNET 文件批量下载 递归,循环,尾递归 利用IDisposable接口构建包含非托管资源对象 《.NET 进阶指南》读书笔记2------定义不可改变类型
SQL 横转竖 .竖专横 (转载) 普通行列转换 问题:假设有张学生成绩表(tb)如下: 姓名 课程 分数 张三 语文 74 张三 数学 83 张三 物理 93 李四 语文 74 李四 数学 84 ...
- Apach 配置虚拟机时候DocumentRoot参数最后不要加斜杠
DocumentRoot "D:\baiduyun\webroot\jedi\app\static" 这样是可以的 DocumentRoot "D:\baiduyun\w ...
- springboot 整合 rabbitmq
http://blog.720ui.com/2017/springboot_06_mq_rabbitmq/
- hibernate开发流程
开发流程,注意:每个hibernate版本在集成的时候是不太一样的.本次使用的是hibernate-distribution-3.6.10.Final-dist 一.开发流程 1)在数据库中创建表,代 ...
- laravel模型中打印sql语句
模型中有个 ->toSql() 可以打印sql语句
- unity, public+[HideInInspector] vs private
下面写法不报错: [System.Serializable] public class CmyObj{ CA m_a; ... } public class XXX: MonoBehavior{ [H ...












