EntityAとEntityBの2つのエンティティがあるとします。
EntityBはEntityAに@OneToOne
関連しています。
@Entity
public class EntityB {
@OneToOne(fetch = FetchType.LAZY)
private EntityA entA;
// other stuff
}
DBからEntityBをロードすると、対応するEntityA(たとえばentA1)が遅延ロードされます。
その後、EntityAリストをロードします
List result = entityManager.createQuery("select A from EntityA A")
.setFirstResult(start).setMaxResults(end).getResultList();
結果リストには、以前に遅延ロードされプロキシされたEntityAと、次のような通常のマテリアライズされたEntityAの両方が含まれます。
EntityA
EntityA_$$_javassist_nnn <--- entA1 which is loaded lazily earlier
EntityA
...
だから私の質問:
1)これは予想される動作ですか?それに関するapidoc情報はどこにありますか?
2)プロキシされたエンティティのみを完全にロードできますか、それともすべてを熱心にロードできますか?混合されていません。