javax.persistence
Annotation Type EntityResult


@Target(value={})
@Retention(value=RUNTIME)
public @interface EntityResult

Used to map the SELECT clause of a SQL query to an entity result. If this annotation is used, the SQL statement should select all of the columns that are mapped to the entity object. This should include foreign key columns to related entities. The results obtained when insufficient data is available are undefined.

   Example:

   Query q = em.createNativeQuery(
       "SELECT o.id, o.quantity, o.item, i.id, i.name, i.description "+
           "FROM Order o, Item i " +
           "WHERE (o.quantity > 25) AND (o.item = i.id)",
       "OrderItemResults");
   @SqlResultSetMapping(name="OrderItemResults",
       entities={
           @EntityResult(entityClass=com.example.Order.class),
           @EntityResult(entityClass=com.example.Item.class)
   })
 

Since:
Java Persistence 1.0
See Also:
SqlResultSetMapping

Required Element Summary
 java.lang.Class entityClass
          The class of the result.
 
Optional Element Summary
 java.lang.String discriminatorColumn
          Specifies the column name (or alias) of the column in the SELECT list that is used to determine the type of the entity instance.
 FieldResult[] fields
          Maps the columns specified in the SELECT list of the query to the properties or fields of the entity class.
 

Element Detail

entityClass

public abstract java.lang.Class entityClass
The class of the result.

fields

public abstract FieldResult[] fields
Maps the columns specified in the SELECT list of the query to the properties or fields of the entity class.

Default:
{}

discriminatorColumn

public abstract java.lang.String discriminatorColumn
Specifies the column name (or alias) of the column in the SELECT list that is used to determine the type of the entity instance.

Default:
""


Submit a bug or feature

Copyright © 2009-2011, Oracle Corporation and/or its affiliates. All Rights Reserved. Use is subject to license terms.

Generated on 10-February-2011 12:41

Scripting on this page tracks web page traffic, but does not change the content in any way.