خرید بک لینک

Vote count: 0

I wanted to map a simple parent-child relationship.

@OneToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL, mappedBy = "mother")
public Set<User> getChildren() {
    retu children;
}

@ManyToOne(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
@JoinColumn(name = "MOTHER_ID")
public User getMother() {
    retu this.mother;
}

Test case:

@Test
public void t4adopt() {
    User ewa = session.find(User.class, 1L);
    User user = new User("abel", "abel@garden.com");
    session.persist(user);
    ewa.getChildren().add(user);
    System.out.println("save eva's children");
    session.saveOrUpdate(ewa);
    //session.save(user);
    session.flush();
    System.out.println("4. " + ewa);
    session.refresh(user);
    System.out.println("5. " + user);
}
@Before
public void start() {
    session.getTransaction().begin();
}

@After
public void close() {
    session.getTransaction().commit();
    session.close();
}

Hibeate isn't assigining any mother is in child entity.

5. User [idUser=3, mother=null, userEmail=abel@garden.com, name=null, suame=null, userGroups=[], userLogin=abel]

When I assign child to mother directly, its working.

User user = new User("kain", "kain@garden.com");
User ewa = session.find(User.class, 1L);
user.setMother(ewa);
session.persist(user); //ok

asked 38 secs ago

برچسب: نویسنده: استخدام کار تاريخ: يکشنبه 23 خرداد 1395 ساعت: 9:55

صفحه بندی