hibernate 一对一外键关联
来源:互联网 发布:二手手机淘宝店推荐 编辑:程序博客网 时间:2024/05/08 04:37
一对一单向外键关联:一夫一妻,是一对一的关系。建Husband 和Wife类。
public class Husband { private int id; private String name; // 丈夫和妻子,一夫一妻,一对一关联。丈夫里面有Wife的引用,Wife里面没有设定Husband引用,单向引用。 private Wife wife; @Id @GeneratedValue public int getId() { return id; } @OneToOne//一对一 //@JoinColumn与@Column标记一样,是用于注释表中的字段的。 @JoinColumn(name="wife_Id") public Wife getWife() { return wife; } get、set方法省略.........}public class Wife { private int id; private String name; @Id @GeneratedValue public int getId() { return id; } get、set方法省略.........}
@Test public void save(){ Husband h=new Husband(); h.setName("lilei"); Wife wife=new Wife(); wife.setName("hanmeimei"); h.setWife(wife); Configuration con= new AnnotationConfiguration(); SessionFactory sf=con.configure().buildSessionFactory(); Session session=sf.getCurrentSession(); session.beginTransaction(); session.save(wife); session.save(h); session.getTransaction().commit(); sf.close(); } 控制台打印结果: Hibernate: insert into Wife (name) values (?)Hibernate: insert into Husband (name, wife_Id) //wife_Id) 外键 values (?, ?)
一对一双向外键关联:只改动Wife即可。
@Entitypublic class Wife { private int id; private String name; private Husband husband; @Id @GeneratedValue public int getId() { return id; } //设置mappedby.否则两边都设外键会显得特别冗余,好像还会经常报错。 @OneToOne(mappedBy="wife") public Husband getHusband() { return husband; } //其他省略...}Hibernate: insert into Wife (name) values (?)Hibernate: insert into Husband (name, wife_Id) values (?, ?)
一对一单向外键关联和一对一双向外键关联,在数据库中没有区别,在后台代码中单向我们的wife找不到husband,而双向中可以找到。好像也没什么区别………….
0 0
- hibernate 一对一外键关联
- 13.Hibernate一对一外键&一对一主键双向关联
- Hibernate 一对一外键单向关联
- Hibernate 一对一外键双向关联
- Hibernate一对一关联(唯一外键)
- Hibernate 一对一外键单向关联
- hibernate一对一唯一外键关联
- Hibernate一对一单双向外键关联
- Hibernate 一对一外键单向关联
- hibernate 一对一的外键关联
- hibernate一对一外键关联映射
- Hibernate 一对一外键双向关联
- Hibernate 一对一外键单向关联
- Hibernate 一对一外键双向关联
- Hibernate双向一对一外键关联
- Hibernate 一对一外键单向关联
- hibernate一对一外键单向关联实例
- Hibernate 一对一外键单向关联
- leetcode-7Reverse Integer
- 九鼎创展s5p4418开发板Android4.4-去掉uboot中的电池检测
- 安卓监听EditText
- 【CUDA并行编程之四】矩阵相乘
- YTU-OJ-分数类的四则运算【C++】
- hibernate 一对一外键关联
- 《算法导论》读书笔记之第13章 红黑树
- linux 磁盘性能监控
- Hadoop 学习笔记二 单机安装
- 学习笔记九:跟我一起学makefile
- 利用hibernateTemplate进行最简单的分页
- 九度1015 还是A+B(字符串)
- 程序员一千问
- IOS自动布局系列视频教程-04简单的调用豆瓣API【海鹰】