【发布时间】:2016-01-04 10:38:32
【问题描述】:
我不想在保存父实体时选择子集合
我有父子关系,子集合被映射为惰性。我取了一个父,当然因为懒加载子集合没有加载。但是当我想更新我的父母时,第一个子集合正在加载,然后父母正在更新。性能问题!怎么解决 ?
Parent entity :
@Entity
@Table(name = "LOAN")
@Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)
public class Loan implements java.io.Serializable {
private Long id;
private Set<VchN> vchNs=new HashSet<VchN>(0);
private Set<VchN2> vchNs2=new HashSet<VchN2>(0);
.
.
.
.
private Set<VchN100> vchNs100=new HashSet<VchN100>(0);
/*
id setter getter
*/
@OneToMany(fetch = FetchType.LAZY)
@JoinColumn(name = "loan_id", insertable = false,updatable = false)
public Set<VchN> getVchNs() {
return vchNs;
}
public void setVchNs(Set<VchN> vchNs) {
this.vchNs = vchNs;
}
/*
setters getters
*/
}
Child enity:
@Entity
@Table(name = "VCH_N")
@Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)
public class VchN implements java.io.Serializable {
private Loan loan;
@Column(name = "loan_id", nullable = false)
public Long getLoanId() {
return loanId;
}
public void setLoanId(Long loanId) {
this.loanId = loanId;
}
}
so on......
Now when I execute
loanRepository.save(loan);
Output:
select columns from VchN where loan_id=?
select columns from VchN2 where loan_id=?
.
.
.
select columns from VchN100 where loan_id=?
update Loan set column = ?
I just want to update parent entity.
【问题讨论】:
-
你的代码在哪里!到目前为止你尝试了什么?请澄清您的具体问题或添加其他详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。请参阅How to Ask 页面以获得澄清此问题的帮助。
-
我已经更新了帖子。
标签: spring hibernate jpa spring-boot jhipster