Jakarta Persistence (JPA) Annotation Type
jakarta.persistence.ColumnResult
- Implemented Interfaces:
Annotation
Used in conjunction with the
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") })
- See Also:
- Since:
- Jakarta Persistence (JPA) 1.0
Annotation Elements
String name- Since:
- Jakarta Persistence (JPA) 1.0
Class<?> typeIf the
type element is not specified, the default JDBC type mapping for the column is used.- Default:
void/class
- Since:
- Jakarta Persistence (JPA) 2.1
Additional JDK methods inherited from java.lang.annotation.Annotation
annotationType(), equals(Object), hashCode(), toString()