2016-05-06 10 views
0

私はエンティティクラスProjectDataを持っています。このクラスで私はUserDataエンティティオブジェクトを持っています。 ProjectDataが正常に動作するようになると、@ JoinColumnアノテーションを使用してuserDataを取得します。 しかし、私が新しいProjectDataを作成した場合、userDataIdをPRJ_USER_PM_ID列に保存する方法がわかりません。JPA JoinColumn save id別のエンティティクラス内の外部エンティティクラス

テーブルPROJECTでは、私はユーザーデータのIDを持っています。 私は追加の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

あなたはそれを持っていけない場合は、必要なIDとのuserDataを作成し、ちょうどprojectDataに設定します。

projectData.setUserData (userData); 

そしてprojectDataを保存します。

+0

しかし、私はコンボボックス(これは私がhashmap(id-name)を持っている)で設定しているので、userIDしか持っていません。 userIdを使用して新しいuserDataを作成しても問題ありませんか? – lucas999

+0

はい、うまくいくはずです – aviad

関連する問題