Java 如何在spring数据jpa中进行投影
我使用@Query,结果如下:[1631551234111111111] 结果来自数据类型为String的列,我尝试按For和forEach循环,但得到错误, 因为数据类型无法强制转换到我拥有的域 如何为@Query的结果循环正确的方式? 我是Java新手,我很想得到解释: 我的问题是:Java 如何在spring数据jpa中进行投影,java,jpa,spring-data-jpa,Java,Jpa,Spring Data Jpa,我使用@Query,结果如下:[1631551234111111111] 结果来自数据类型为String的列,我尝试按For和forEach循环,但得到错误, 因为数据类型无法强制转换到我拥有的域 如何为@Query的结果循环正确的方式? 我是Java新手,我很想得到解释: 我的问题是: @Query("SELECT DISTINCT W.whatsappid FROM WhatsappChat W") List<WhatsappChat> findAllContact(); 问题
@Query("SELECT DISTINCT W.whatsappid FROM WhatsappChat W")
List<WhatsappChat> findAllContact();
问题是您获取实体的ID,但在循环中需要实体 您需要以字符串列表的形式获取查询结果 但正确的问题是:
@Query("SELECT DISTINCT W.whatsappid FROM WhatsappChat W")
List<String> findAllContact();
对于列表的迭代,您可以执行以下操作:
列表ID=respoitory.findAllContact;
新消费者{
@凌驾
公共无效接受字符串{
//使用字符串
}
};
请发布相关代码片段did@RameshKothacheck我编辑的帖子@rameshkothan如果不使用@Query,怎么办?你能给我举个例子吗?@poppop我在回答中提到我只使用whatsappid only这就是为什么我不想使用*来获取所有columnfindALlDistinct获取错误:data.mapping.PropertyReferenceException:找不到属性findAllDistinctfor@poppop好的,如果你只需要ID,我会更新我的答案
WhatsappChat is my @Entity / domain
@Query("SELECT DISTINCT W.whatsappid FROM WhatsappChat W")
List<String> findAllContact();