为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 spring-data-jpa 中进行投影

如何在 spring-data-jpa 中进行投影

森栏 2023-02-16 14:15:22
我正在使用@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

  }

});


查看完整回答
反对 回复 2023-02-16
  • 1 回答
  • 0 关注
  • 68 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号