मुझे OneToMany फ़ील्ड की दृढ़ता पर परेशानी है। ये दो सरलीकृत कक्षाएं हैं मैं परीक्षण करने के लिए उपयोग कर रहा हूं।जेपीए वन टोमनी बच्चे को जारी नहीं रखती
public class User implements Serializable {
...
private String name;
...
@OneToMany(mappedBy = "user", cascade = CascadeType.ALL)
private List<PhoneNumber> phoneNumbers;
...
}
public class PhoneNumber implements Serializable {
...
private String phoneNumber;
...
@ManyToOne()
private User user;
...
}
तो मैं ऐसा करना चाहते हैं:
User u = new User();
PhoneNumber p = new PhoneNumber();
u.setName("Alan");
u.getPhoneNumbers.add(p);
लेकिन जब मैं उपयोगकर्ता जारी रहती यू PhoneNumber बच्चे स्वचालित रूप से कायम नहीं कर रहा है। ओओ रास्ते में, मुझे केवल कई रचनाओं में से एक करने की आवश्यकता है।
मैं एक्लिप्ससेंक का उपयोग करता हूं।
आपके संकेतों के लिए सभी को बहुत धन्यवाद।
यह थोडा अजीब है - ऐसा उदाहरण मेरे मामले (एक्लिप्ससेंक) में ठीक काम करता है। अंत में आप केवल EntityManager # persist (u) करते हैं? आप कैसे जानते हैं कि मान जारी नहीं है - डेटाबेस में चेक किया गया है या किसी भी तरह से क्वेरी पूछता है? क्या आपने EntityManager को फ़्लश करने का प्रयास किया था? –