0
我希望使用 @QueryHint(name = QueryHints.BATCH,value =「pi.jrnls」) 註釋以及主鍵@Id查找。 我在哪裏註釋?它看起來像我只能把它放在@NamedQuery中。但是默認的pk查找當然沒有@NamedQuery。批量在EclipseLink中正常查找操作的內部提取
@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;
對不起,我沒有告訴。我使用eclipselink 2.0。沒有批處理。 –
在EclipseLink 2.1中添加了BatchFetch註釋。 EclipseLink 2.0具有JPA 2.0支持,所以如果您使用JPA 1.0持久性jar,仍然可以將參數傳遞給EclipseLink EntityManagerImpl上可用的find方法。您還可以使用描述符定製器將批量抓取添加到映射中,並在其上調用useBatchReading():http://wiki.eclipse.org/EclipseLink/UserGuide/JPA/Advanced_JPA_Development/Customizers – Chris