मेरे पास एक द्विपक्षीय, एक से कई, और कई से एक रिश्ते हैं। कहते हैं, एक कंपनी कई व्यक्तियों कंपनी में,जेपीए वनटॉनी, हमेशा खाली
@OneToMany(mappedBy = "company", fetch = FetchType.EAGER, cascade = CascadeType.ALL)
private Collection<Person> persons;
और व्यक्ति में,
@ManyToOne
@JoinColumn(name="COMPANY_ID")
private Company company;
अब है, और एक व्यक्ति एक कंपनी है, इसलिए, का कहना है कि मैं एक @PrePersist/@PreUpdate विधि है कंपनी, जहां जब यह अद्यतन किया जाता है, मैं सभी लोगों पर एक ही टाइमस्टैम्प सेट करने के लिए ... की तरह चाहते हैं,
@PrePersist
@PreUpdate
public void setLastModified() {
this.lastModified = System.currentTimeMillis();
if (persons != null) {
for (Person person : persons) {
person.setLastModified(this.lastModified);
}
}
}
जब मैं इस डिबग पर, मैं देखता हूँ कि कंपनी में व्यक्तियों क्षेत्र हमेशा खाली है। जब मैं व्यक्तियों के संग्रह के प्रकार को देखता हूं, तो यह एक java.util.Vector है। सुनिश्चित नहीं है कि यह प्रासंगिक है या नहीं। मुझे कुछ ऑटो लोडिंग जेपीए संग्रह प्रकार देखने की उम्मीद है।
मैं क्या गलत कर रहा हूं?
धन्यवाद। मुझे अभी तक इसे सत्यापित करने का मौका नहीं मिला है, लेकिन जब मैं करता हूं तो मैं इस प्रश्न को अपडेट कर दूंगा। –
यह समस्या का समाधान नहीं करता है। –