2016-08-01 7 views
0

私は2つのクラスが1つあり、1つは電話です。 私は双方向のマッピングを1つ持っていますユーザーは複数の電話番号を持つことができます。私は、ユーザーを取得し、利用者からの電話番号を取得すると、ユーザーが今すぐ2電話番号 をお持ちの場合は1対多の双方向の問題を最大限に活用する

User{ 
private int id; 

private String name; 

@OneToMany(cascade=CascadeType.ALL, mappedBy="user") 
List<Phone> phoneList; 

//get set// 


} 

class Phone{ 

private int id; 
private String number; 
@ManyToOne(cascade=CascadeType.ALL) 
private User user; 


} 

は今と仮定します。 1つの電話番号が必要な場合は、両方の番号を取得します。 番号を取得する方法はありますか?

+0

どちらが電話番号ですか?ユーザーを読み込むと、そのユーザーは複数の電話を持っているため、複数の電話が明らかになります。あなたは特定の電話番号を取得するためにクエリを実行することができます –

答えて

0

質問はどの番号を取得したいですか?例。現在のユーザー、初めて使用されたユーザー、または特定のユーザー...

ユーザは数字のリストを参照し、インデックス(例:phoneList [0])でアクセスして操作します。最も一般的な方法は、複雑な作業や特定の番号に対してLINQツールを使用することです。

+0

LINQとJPAとの関係とHibernateはよくわかりません... –

+0

hibernateで1人のユーザーを取得したときにgetphone番号を取得しようとすると、 User.Butに関連付けられている電話番号のうち1つの電話番号が必要です.SOフィルターやその他の方法がありますか。 @Niel Stockton –

関連する問題