Top Description Methods
jakarta.persistence

public @Interface ColumnResult

extends Annotation
Annotations
@Target
@Retention:RUNTIME
Imports
java.lang.annotation.Target, .Retention

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") })
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
1.0
See Also
SqlResultSetMapping, NamedNativeQuery, ConstructorResult

Method Summary

Modifier and TypeMethod and Description
public String
name()

(Required) The name of a column in the SELECT clause of a SQL query

public Class<?>
type()

(Optional) The Java type to which the column type is to be mapped.

Inherited from java.lang.annotation.Annotation:
annotationTypeequalshashCodetoString

Method Detail

nameback to summary
public String name()

(Required) The name of a column in the SELECT clause of a SQL query

typeback to summary
public Class<?> type()

(Optional) The Java type to which the column type is to be mapped. If the type element is not specified, the default JDBC type mapping for the column is used.

Since
2.1