Jakarta Persistence (JPA) Annotation Type

jakarta.persistence.SqlResultSetMapping

Implemented Interfaces:
Annotation
Target:
Type

Specifies a mapping of the columns of a result set of a native SQL query or stored procedure.

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
The name given to the result set mapping, and used to refer to it in the methods of the Query and StoredProcedureQuery APIs.
Since:
Jakarta Persistence (JPA) 1.0
Specifies the result set mapping to entities.
Default:
{}
Since:
Jakarta Persistence (JPA) 1.0
Specifies the result set mapping to constructors.
Default:
{}
Since:
Jakarta Persistence (JPA) 2.1
Specifies the result set mapping to scalar values.
Default:
{}
Since:
Jakarta Persistence (JPA) 1.0

Additional JDK methods inherited from java.lang.annotation.Annotation

annotationType(), equals(Object), hashCode(), toString()