0

EntityManager はメソッド getReference() を提供します。

JPQL に類似したもの、または CriteriaBuilder 内のより良いイベントはありますか?参照としてエンティティのリストを返すものはありますか?

実際、私は ID だけを使用し、新しいトランザクションで各エンティティを処理します。メモリ使用量が台無しになるため、すべてのエンティティを取得することは避けたいです。

参照を使用できれば、タイプ セーフになり、メモリ オーバーヘッドも問題ありません。

ありがとう!

4

2 に答える 2

1

次のようなこともできます

select idField from YourEntity where ..

同様に、条件クエリでもYourEntity.idField_値を使用します。

于 2013-07-12T11:07:50.980 に答える
0

基準ケースで型安全性を確保するには、次のようにします。

CriteriaQuery<Long> criteria =criteriaBuilder.createQuery(entityClass);
Root<T> r=criteria.from(entityClass);

//Where clauses

criteria.select(r.<Long>get("id"));

TypedQuery<Long> query=entityManager.createQuery(criteria);
List<Long> result=query.getResultList();
于 2013-07-12T11:52:02.660 に答える