iBatisを使用する既存のアプリにいくつかの新しい機能を追加しようとしていますが、設計上の決定の1つに少し行き詰まっています。
新しいフィールドを追加したい既存のクラス(クラスAと呼びます)があります。これらのフィールドはタイプBになります。
クエリは外部結合を介してBを結合します。
だからそれは次のようなものになります
public class A {
//... existing fields
private List<B> bList; // may use a Map rather than a list?
// etc.
}
public class B {
private int id; // primary key
private int type;
private String description;
// etc.
}
私はこれをWebアプリで使用しています。最初のページで「A」のリストを返し、次にBの横にリンクを配置します。
例えば:
LinktoRecordA1 - LinktoB1 LinktoB2 LinktoB3
LinktoRecordA2 - LinktoB1 LinktoB3
LinktoRecordA3 - LinktoB1 LinktoB2 LinktoB3
LinktoRecordA4
等
(注:レコードA4にはBへのリンクがないため、上記の外部結合)
「A」の最初のフェッチでは、Bレコードが存在することだけを知りたいのですが、その主キーは、B詳細レコードへのリンクを提示することです。だから私の問題は、「A」オブジェクトに「B」の完全に入力されたリストを作成せずにこれを行うにはどうすればよいですか?