【发布时间】:2015-12-06 18:40:43
【问题描述】:
我有一个关于 Hibernate 规范第 4.6 节的问题,位于 http://docs.jboss.org/hibernate/orm/5.0/userGuide/en-US/html_single/#d5e423
它是写在那个规范中的:
请注意,只有实体实例及其集合会被刷新 除非您将 REFRESH 指定为任何关联的级联样式
该语句中的“它的集合”是什么意思?
【问题讨论】:
标签: hibernate
我有一个关于 Hibernate 规范第 4.6 节的问题,位于 http://docs.jboss.org/hibernate/orm/5.0/userGuide/en-US/html_single/#d5e423
它是写在那个规范中的:
请注意,只有实体实例及其集合会被刷新 除非您将 REFRESH 指定为任何关联的级联样式
该语句中的“它的集合”是什么意思?
【问题讨论】:
标签: hibernate
意思是它的关联。
例子:
@Entity
@Table(name = "MyEntity")
public class MyEntity implements Serializable
{
//..
@OneToMany(cascade=CascadeType.REFRESH, fetch = FetchType.LAZY)
@JoinColumn(name="MY_ENTITY_ID")
private Set<MyEntityFriend> itsFriends;
//..
}
当 session 在实体实例 MyEntity 上调用 refresh() 时,此刷新也会级联到 itsFriends。
最常见的 refresh() 级联到未明确定义而是通过 CascadeType.ALL
隐式定义的关联【讨论】: