0

我想将 @QueryHint(name=QueryHints.BATCH, value="pi.jrnls") 注释与主键 @Id 查找一起使用。我在哪里放置注释?看起来我只能将它放在@NamedQuery 中。但是默认的 pk 查找当然没有 @NamedQuery。

@Entity
@Table(schema="prd", name="PRDITEM", uniqueConstraints= {@UniqueConstraint(columnNames= {"prditmNO"})})
@Cache(expiry=com.quoka.qis.lib.persistence.Constants.SHORT_CACHE_PERIODE_MS)
@NamedQuery(name = "PrdItem.findByNo", query = "select pi from PrdItem pi where pi.no = ?1",
    hints={
        @QueryHint(name=QueryHints.BATCH, value="pi.jrnls"),
        @QueryHint(name=QueryHints.BATCH, value="pi.bookings")//,
    }
)
public class PrdItem {....


@Id 
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="prditmID", insertable = false, nullable=false, unique=true) 
private Long id;
4

1 回答 1

1

EclipseLink 有一个 BatchFetch 注释,您可以添加到映射中: http ://eclipse.org/eclipselink/documentation/2.4/jpa/extensions/a_batchfetch.htm

JPA 2.0 还有一个查找签名,它接受类、键和属性映射。

于 2013-01-21T14:14:01.730 回答