[英]How do I get a distinct list of objects with JpaRepository.findAll using a Predicate?
我有類似的東西:
Predicate p = ...;
List<MyObject> objectList = (List<MyObject>) myRepository.findAll(p); // myRepository is autowired
這將獲取所有MyObjects的列表,其中包含重復項。 是否可以獲取DISTINCT列表?
我真的需要使用EntityManager和CriteriaBuilder嗎? 還是可以僅使用謂詞和存儲庫對象來完成?
我不是在談論手動遍歷列表,刪除重復項或使用任何Collections API,而是談論JPA或QueryDSL API。
是的,有可能。以下是我能想到的簡單步驟
在MyObject類中實現hashCode()和equals()。
根據上面的列表直接使用其構造函數創建一個Set,該構造函數將Collection作為參數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.