十五、(1)Spring Data JPA 表间关系
(一)级联操作(Cascade)
- CascadeType.ALL
包含所有级联关系; - CascadeType.PERSIST
级联保存,保存主对象的时候,同时将关联的对象持久化到数据库中 - CascadeType.REFRESH
级联刷新,查询主对象的同时,重新查询关联的对象; - CascadeType.MERGE
级联更新,在更新主对象的同时,更新关联的对象; - CascadeType.REMOVE
级联删除,删除主对象的同时,删除关联的对象; - CascadeType.DETACH
取消级联
(二)加载策略(Fetch)
-
LAZY:延迟加载数据(当在真正需要数据的时候,才真正执行数据加载操作,即向数据库发送 SQL 语句)
-
EAGER:立即加载数据
默认使用 FetchType.LAZY,即开启延迟数据加载。
(三)optional
定义该关联类对是否必须存在,值为false时,关联类双方都必须存在,如果关系被维护端不存在,查询的结果为null。 值为true 时, 关系被维护端(另一个表)可以不存在,查询的结果仍然会返回关系维护端,在关系维护端中指向关系被维护端的属性为null。