SqlResultSetMapping,
NamedNativeQuery, or ConstructorResult
annotation to map a column of the SELECT list of a SQL query.
The name element references the name of a column
in the SELECT list — i.e., column alias, if applicable.
Scalar result types can be included in the query result by
specifying this annotation in the metadata.
Example:
Query q = em.createNativeQuery(
"SELECT o.id AS order_id, " +
"o.quantity AS order_quantity, " +
"o.item AS order_item, " +
"i.name AS item_name, " +
"FROM Order o, Item i " +
"WHERE (order_quantity > 25) AND (order_item = i.id)",
"OrderResults");
@SqlResultSetMapping(
name = "OrderResults",
entities = {
@EntityResult(
entityClass = com.acme.Order.class,
fields = {
@FieldResult(name = "id", column = "order_id"),
@FieldResult(name = "quantity", column = "order_quantity"),
@FieldResult(name = "item", column = "order_item")
})
},
columns = {
@ColumnResult(name = "item_name")
})
SqlResultSetMapping, NamedNativeQuery, ConstructorResult
| Modifier and Type | Method and Description |
|---|---|
| public String | |
| public Class |
| name | back to summary |
|---|---|
| public String name() (Required) The name of a column in the SELECT clause of a SQL query | |
| type | back to summary |
|---|---|
| public Class (Optional) The Java type to which the column type is to be mapped.
If the
| |