这个问题与另一个问题相似/相关,但更具体地集中在非拥有@OneToMany
关系方面。给定以下映射的吸气剂:
...
private List<Leaf> leaves;
...
@OneToMany(mappedBy = "extkey")
@LazyCollection(LazyCollectionOption.TRUE)
public List<Leaf> getLeaves() {
return leaves;
}
...
在这种情况下,将transient
修饰符添加到leaves
字段会产生什么影响?
这种关系是懒惰和"反转"的,即拥有方是Leaf
对象。代码以前在工作,现在看起来仍然可以工作,但我想知道任何不希望的微妙副作用,因为它在 JPA 上下文中有一些特殊性transient
。我需要这个,因为将实体实例传递给外部 Gson lib 会循环并stackoverflow
,我想 bc 双向关系会创建一个循环,我可以使用瞬态字段来避免它。谢谢
当您反序列化实体时,影响将受到影响,因为序列化后对象状态会有所不同。
无论如何,您没有指定为什么需要此修饰符。