@TargetSE(valueSE={}) @RetentionSE(valueSE=RUNTIMESE) public @interface EntityResult
SqlResultSetMapping アノテーションと組み合わせて使用されます。このアノテーションを使用する場合、SQL ステートメントは、エンティティオブジェクトにマップされているすべての列を選択する必要があります。これには、関連するエンティティへの外部キー列を含める必要があります。十分なデータがない場合に得られる結果は未定義です。
Example:
Query q = em.createNativeQuery(
"SELECT o.id, o.quantity, o.item, i.id, i.name, i.description "+
"FROM Order o, Item i " +
"WHERE (o.quantity > 25) AND (o.item = i.id)",
"OrderItemResults");
@SqlResultSetMapping(name="OrderItemResults",
entities={
@EntityResult(entityClass=com.acme.Order.class),
@EntityResult(entityClass=com.acme.Item.class)
})
SqlResultSetMapping| 修飾子と型 | 必須要素と説明 |
|---|---|
ClassSE | entityClass 結果のクラス。 |
| 修飾子と型 | オプションの要素と説明 |
|---|---|
StringSE | discriminatorColumn エンティティインスタンスの型を決定するために使用される SELECT リスト内の列の列名(またはエイリアス)を指定します。 |
FieldResult[] | fields クエリの SELECT リストで指定された列を、エンティティクラスのプロパティまたはフィールドにマップします。 |
public abstract ClassSE entityClass
public abstract FieldResult[] fields
public abstract StringSE discriminatorColumn
Copyright © 2018,2020 Eclipse Foundation.
Use is subject to license terms.