我有双向,一对多,多对一的关系.比如说,一个公司有很多人,一个人有一个公司,因此,在公司,
@OneToMany(mappedBy = "company", fetch = FetchType.EAGER, cascade = CascadeType.ALL)
private Collection<Person> persons;
Run Code Online (Sandbox Code Playgroud)
在人的,
@ManyToOne
@JoinColumn(name="COMPANY_ID")
private Company company;
Run Code Online (Sandbox Code Playgroud)
现在,假设我在公司有一个@PrePersist/@PreUpdate方法,当它更新时,我想在所有人身上设置相同的时间戳...就像,
@PrePersist
@PreUpdate
public void setLastModified() {
this.lastModified = System.currentTimeMillis();
if (persons != null) {
for (Person person : persons) {
person.setLastModified(this.lastModified);
}
}
}
Run Code Online (Sandbox Code Playgroud)
当我调试这个时,我看到公司中的人员字段总是空的.当我查看人物集合的类型时,它是一个java.util.Vector.不确定这是否相关.我希望看到一些自动加载JPA集合类型.
我究竟做错了什么?
| 归档时间: |
|
| 查看次数: |
4378 次 |
| 最近记录: |