Hibernate关系映射级别注解(一对一双向外键关联、一对一双向外键联合主键)
来源:互联网 发布:dota和dota2区别 知乎 编辑:程序博客网 时间:2024/05/17 06:08
一对一双向外键关联
这个一对一双向外键关联要怎么理解,双方都持有对方的引用,也就是你中有我,我中有你。
以前一篇的例子来说,学生方持有身份证类的引用,身份证类也持有一个学生对象的引用,这两个引用都充当各自表中的外键。
主控方的配置和一对一单向外键关联中的是一样的,不一样的地方是被控方。被控方的引用属性上边也要加上@OneToOne注解,其中要设置一下mappedBy属性,这个mappedBy属性指定了把控制权交给了主控方,这里要指定主控方对应的外键属性。
这里要注意,双向关联,必须设置mappedBy属性。因为双向关联只能交给一方去控制,不可能在双方都设置外键保存关联关系,否则双方都无法保存。
之前的例子中,主控方Students类不需要改变,主要修改身份证类。加一个private Students stu
并进行封装。注意对于前边的pid的注解是写在属性上边而不是get方法上边,所以stu的注解也是写在属性的上方,要保持一致。
@OneToOne(mappedBy="card") private Students stu;
然后要注意在配置文档中进行配置
<mapping class="oto_bfk.Students"/> <mapping class="oto_bfk.IdCard"/>
然后是测试类,测试方法不需要改变,结果没有问题。
一对一双向外键联合主键
联合主键需要借助主键类来实现
首先我们要创建一个主键类,这个主键类要添加一个@Embeddable注解。
主键类必须实现Serializable接口,重写hashCode和equals方法。
然后在创建一个实体类,在实体类所对应的联合主键属性上边添加@EmbeddedId这个属性级别注解
阅读全文
0 0
- Hibernate关系映射级别注解(一对一双向外键关联、一对一双向外键联合主键)
- Hibernate关系映射(2)_一对一双向外键关联
- hibernate一对一双向外键关联
- hibernate一对一双向外键关联_Annotation
- hibernate一对一双向外键关联_XML
- hibernate Annotation一对一双向外键关联
- hibernate一对一双向外键关联
- hibernate学习:一对一双向外键关联
- hibernate一对一双向外键关联
- Hibernate:一对一双向外键关联
- Hibernate关系映射(二)一对一双向外键关联@OneToOne Annotation方式
- 037:hibernate一对一双向外键关联(Annotation)
- 037:hibernate一对一双向外键关联(xml)
- Hibernate之对象关系映射06一对一双向外键关联
- Hibernate_一对一双向外键关联
- Hibernate学习笔记_07_一对一双向外键关联
- 【hibernate框架】一对一双向外键关联(XML实现)
- 【hibernate框架】一对一双向外键关联(Annotation实现)
- 适配Android 7.0出现读取外部存储问题解决方法
- Java知识点总结(一)语言基础
- 一个Unity材质赋值内存泄露问题
- 以太坊搭建---初始化创始块
- [LeetCode]191. Number of 1 Bits
- Hibernate关系映射级别注解(一对一双向外键关联、一对一双向外键联合主键)
- vector查找数据并返回索引
- 笔记20 | 学习整理开源APP(BaseAnimation)程序源码“中的通讯录效果
- ES6之Promise
- 对图片进行等比例缩小
- C语言学习笔记(六)——文件操作
- python Flask-SQLAlchemy 连接数据库
- Easyui Datagrid 表头和表体列对照异常
- 分享一个sqlsever DBA的blog,东西挺全面