Package javax.persistence
Annotation Interface ColumnResult
Used in conjunction with the
SqlResultSetMapping
annotation 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")} )
- Since:
- Java Persistence 1.0
- See Also:
-
Required Element Summary
-
Optional Element Summary
-
Element Details
-
name
String name(Required) The name of a column in the SELECT clause of a SQL query
-
-
-
type
Class type(Optional) The Java type to which the column type is to be mapped. If thetype
element is not specified, the default JDBC type mapping for the column will be used.- Since:
- Java Persistence 2.1
- Default:
- void.class
-