0

多くのサブクラスのプロパティで検索する基準を構築するために、いくつかのエイリアスを作成しようとしています。これが私のモデルです:

public abstract class Entity {

protected int id;
protected PartyBasicGroup partyBasicGroup;

}

public class Person extends Entity {

}

public class Organization extends Entity {

protected PartyBasicGroup signatoryBasicGroup;
protected String jobTitle;  
}

次のように、個人と組織のエイリアスを作成しようとしています。

criteria = criteria.createAlias("entity.person", "person", JoinType.LEFT_OUTER_JOIN);
criteria = criteria.createAlias("entity.organization", "organization", JoinType.LEFT_OUTER_JOIN);

しかし、私はエラーが発生しています:

Couldn't resolve property person for Entity

この問題を解決するための助けはありますか? サブクラスのプロパティにアクセスするために、サブクラスを参照するエイリアスを作成する方法を知りたいだけです。

ありがとう!

4

1 に答える 1

0

ここでエイリアスを使用する理由がわかりません。以下で十分です:

Criteria criteria = session.createCriteria(Organization.class);
criteria = criteria.add(Restrictions.eq("jobTitle", "XYZ"));
List<Organization> organizations = (List<Organization>) criteria.list();
于 2013-02-18T16:48:28.300 に答える