次のクラス構造が与えられます。
class Job
{
String description;
Collection<JobHistory> history;
}
class JobHistory
{
Date assignDate;
User jobOwner;
}
class JobOwner
{
String name;
String id;
}
このクラス構造は、JPA を介してデータベースにアクセスできます。DAO 層では、JPA 構文でクエリを記述できます。
問題:特定の ID を持つ特定の所有者のエントリと、ジョブの最後の所有者Job
( assignDate 順) のリストが必要です。非常に複雑に聞こえますが、おそらくもっと単純です。すべてのジョブを指定し、指定された所有者がジョブの実際の所有者です。JobHistory
Jobhistory
JobHistory
更新:わかりやすくするために、クラスの名前を少し変更します。
class Job
{
String description;
Collection<JobOwnerHistory> history;
}
class JobOwnerHistory
{
Date assignDate;
User jobOwner;
}
class JobOwner
{
String name;
String id;
}
EveryJob
には、 でソートされた所有者の履歴がありassignDate
ます。実際の所有者は、最後に割り当てられたジョブ (つまりMAX(assignDate)
) を取得しました。特定のユーザーのJobOwnerHistory
エントリをすべてのジョブで検索したい。MAX(assignDate)
User