2.2JPA对象关系映射
来源:互联网 发布:如何遍历json里的数组 编辑:程序博客网 时间:2024/05/21 06:48
1、OneToOne
(1)单向OneToOne
关系拥有端:
关系接收端:
测试效果:
生成表的SQL语句如下:
(2)双向OneToOne
将关系接收端改为:
optional=false时易发生错误:
org.hibernate.PropertyValueException: not-null property references anull or transient value: com.sunyard.entities.Person.name
异常环境:数据插入
异常原因:JPA的Entity中一个属性定义为nullable=false(optional=false即必须有),插入数据该字段为null。
解决方法:将optional=false改为optional=true即可
2、OneToMany
(1)单向OneToMany
关系发出端:
关系接收端:
生成userlogin表的SQL语句如下:
(2)双向OneToMany
测试效果:
3、ManyToOne
测试结果:
4、ManyToMany
(1)单向ManyToMany
测试结果:会生出一张中间表保存USER与ROLE的对应关系
(2)双向ManyToMany
测试结果:
生成中间表的SQL语句:
补充点:
a.关于级联:
public class Order {
.......
@OneToMany(cascade = {CascadeType.PERSIST})//级联操作
@JoinColumn(name = "Order_Id")
private List<OrderItem> items;
...........
}
当对OrderItem中的order字段进行PERSIST操作时也会级联对集合中的items做同样的操作
b.inverseJoinColumns理解
- 2.2JPA对象关系映射
- JPA 对象关系映射总结
- JPA对象关系映射——映射
- Hibernate,JPA 对象关系映射之关联关系映射策略
- JPA 对象关系映射之关联关系映射策略
- Hibernate,JPA 对象关系映射之关联关系映射策略
- JPA 对象关系映射之关联关系映射策略
- Hibernate,JPA 对象关系映射之简单映射策略
- JPA 对象关系映射之简单映射策略
- JPA关系映射
- JPA关系映射
- JPA关系映射
- JPA关系映射
- jpa关系映射
- JPA实体映射关系
- JPA实体关系映射
- JPA的关系映射
- jpa关系映射
- (七)链表----非循环单链表常用算法实现
- Windows 10 Cortana搜索栏变白色解决方案
- 【Oracle】删除表空间
- 用Scrapy爬取网站时总获取不到源代码的解决办法
- AI 分析 不用写代码 即可实现
- 2.2JPA对象关系映射
- cookie setSecure详解
- 快速在Linux中安装ftp服务器
- MFC中用c++语言实现进度条和定时器
- C++11类型转换
- BZOJ3252 攻略
- 【POJ1151】Atlantis-线段树+离散化+扫描线
- SMTP发送邮件
- Java:Stackoverflow上人气最旺的10个Java问题