2016-05-06 2 views
0

У меня есть entityclass ProjectData. В этом классе у меня есть объект объекта UserData. Я использую @JoinColumn аннотацию, чтобы получить userData, когда я получаю ProjectData - он работает правильно. Но если я создаю новую ProjectData, я не знаю, как сохранить userDataId в столбце PRJ_USER_PM_ID;JPA JoinColumn сохранить id внешний класс сущности внутри другого класса сущности

В таблице PROJECT У меня есть идентификатор пользовательских данных. Я пытаюсь использовать дополнительный attrbute projectUserid, но мне кажется, что это нехорошее решение.

@Entity 
    @Table(name="PROJECT") 
    public class ProjectData extends AbstractData { 

     @OneToOne(fetch = FetchType.EAGER) 
     @JoinColumn(name = "PRJ_USER_PM_ID", referencedColumnName = "USR_ID", insertable = false, updatable = false) 
     UserData user; 

     /*@Column(name = "PRJ_USER_PM_ID") 
     Long projectUserid; */ 
    } 

ответ

0

Создать USERDATA с требуемым ID, если вы не имеете его, и просто установить его в сотрудничестваСбор:

projectData.setUserData (userData); 

А затем сохранить сотрудничестваСбор.

+0

Но у меня есть только userID, потому что я установил его с помощью combobox (где у меня hashmap (id-name)). Если я создаю новую userData с userId, она будет работать? – lucas999

+0

Да, он должен работать – aviad