我正在使用@Query并且得到這樣的結果:[16315551234, 11111111111] 該結果來自數據類型為 String 的列,我試圖通過 For 和 forEach 循環但出現錯誤,因為數據類型無法轉換為我擁有的域如何為來自的結果循環正確的方法@Query?我是 Java 的新手,我真的很想對此進行解釋:)我的查詢:@Query("SELECT DISTINCT W.whatsappid FROM WhatsappChat W")
List<WhatsappChat> findAllContact();在我的@ServiceList<WhatsappChat> resultPerKey = whatsappChatRepository.findAllContact();當我記錄結果時:它是這樣的 ==>[16315551234, 11111111111]WhatsappChat is my @Entity / domain
1 回答

慕桂英3389331
TA貢獻2036條經驗 獲得超8個贊
問題是您獲取了實體的 ID,但期望實體在循環中。
您需要將查詢結果作為字符串列表獲取。
但正確的查詢是:
@Query("SELECT DISTINCT W.whatsappid FROM WhatsappChat W")
List<String> findAllContact();
為了迭代列表,你可以這樣做:
List<String> ids = respoitory.findAllContact();
ids.forEach(new Consumer<String>() {
@Override
public void accept(String s) {
//use String
}
});
添加回答
舉報
0/150
提交
取消