Annotation Type SqlResultSetMapping


  • @Target(TYPE)
    @Retention(RUNTIME)
    public @interface SqlResultSetMapping
    Specifies the mapping of the result of a native SQL query.
        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
    • Required Element Summary

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

      Optional Elements 
      Modifier and Type Optional Element Description
      ColumnResult[] columns
      Specifies the result set mapping to scalar values.
      EntityResult[] entities
      Specifies the result set mapping to entities.
    • Element Detail

      • name

        java.lang.String name
        The name given to the result set mapping, and used to refer to it in the methods of the Query API.
      • entities

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

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