Annotation Interface SqlResultSetMapping


@Repeatable(SqlResultSetMappings.class) @Target(TYPE) @Retention(RUNTIME) public @interface SqlResultSetMapping
Specifies the mapping of the result 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")}
    )
 
Since:
1.0
See Also:
  • Required Element Summary

    Required Elements
    Modifier and Type
    Required Element
    Description
    The name given to the result set mapping, and used to refer to it in the methods of the Query and StoredProcedureQuery APIs.
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    Specifies the result set mapping to constructors.
    Specifies the result set mapping to scalar values.
    Specifies the result set mapping to entities.
  • Element Details

    • entities

      EntityResult[] entities
      Specifies the result set mapping to entities.
      Default:
      {}
    • classes

      Specifies the result set mapping to constructors.
      Since:
      2.1
      Default:
      {}
    • columns

      ColumnResult[] columns
      Specifies the result set mapping to scalar values.
      Default:
      {}