Open JPAエンティティがあり、多対多リレーションシップを正常に接続しています。今私は正常にテーブル全体を取得するが、私は本当にそのテーブルのIDをしたい。私はデータベースを後で呼び出すことで、必要なエンティティを再構築する予定です(私のプログラムの流れに従って)。 ID(またはそのテーブルの1つの列)だけが必要です。
1)エンティティBean、またはエンティティBeanを呼び出すために使用するステートレスセッションBeanでこれを制限してください。 2)JPAを使用してこれを試してみるとどうすればいいですか?テーブル全体ではなく、テーブルからIDを取得しますか?今のところオンラインで見て、私はあなたがこれを行う方法が表示されません。だから私はこれを行う方法がないと推測している。 3)戻り値を操作するだけであれば、必要なIDリストだけをユーザーに返すユーザーに返す別のクラスを作成する必要がありますか?JPAを使用して1列のみを返すことが可能
私は完全に間違っているかもしれませんが、その外観から、JPAを使用してこれを行う簡単な方法はないと思います。エンティティBeanの代わりにカスタムオブジェクトをユーザーに返さなければなりません(このカスタムオブジェクトは、現在のようにテーブル全体とは対照的にIDを保持するだけです)
私はこれが本当に関連しているとは思わないが、人々は常にコードを要求しているので、ここでgo ...
@ManyToMany(fetch=FetchType.EAGER)
@JoinTable(name="QUICK_LAUNCH_DISTLIST",
[email protected](name="QUICK_LAUNCH_ID"),
[email protected](name="LIST_ID"))
private List<DistributionList> distributionlistList;
現在、レコードのコレクション全体をどのように取得していますか。私はIDだけを覚えていることを思い出してください。
try
{
//int daSize = 0;
//System.out.println("Testing 1.2..3...! ");
qlList = emf.createNamedQuery("getQuickLaunch").getResultList();
}
これは私がエンティティBeanを呼び出す方法です。私はこれがプログラマチックに進んで、エンティティBeanに似たカスタムオブジェクトを作成する必要があると思っています(ただし、テーブル全体ではなく、IDをどこかに置いてください)。
あなたの考えは何ですか
おかげ
今、私は、distributionlistListに必要なすべての関連DistributionListオブジェクトが含まれていることを意味する "全体表"を返します。 distributionlistList内の各DistributionListを繰り返し処理し、その.getId()を呼び出し、それらを新しいリストに格納すると何が問題になりますか? JPAはテーブル全体を返します。その抽象化は、任意の列ではなくオブジェクト全体がデータベースに格納されるためです。通常抽象を破ることは正しい答えではありません。 –
さて、私はそれをする必要があります。しかし、新しいオブジェクトを作成し、quickLaunchオブジェクトの代わりにそのオブジェクトを返す必要もあります。どちらができるか。私はこの特定のインスタンスのために、その機能を持つことは素晴らしいことだと思います。 – SoftwareSavant