【问题标题】:Get lists of ids with JPA instead all Object使用 JPA 获取 id 列表而不是所有 Object
【发布时间】:2019-08-24 01:21:40
【问题描述】:

我正在尝试仅从 JPA 存储库中获取 id 列表。 而不是使用

List<Case> findAll(Specification<Case> filter);

类似

List<Integer> findAll(Specification<Case> filter);

因为我不需要完整的对象。每条记录都有很多数据,记录也很多。

【问题讨论】:

    标签: spring jpa


    【解决方案1】:

    我现在想到的两个最简单的选择:

    1. 像往常一样获取结果,但在数据库获取之后在单独的步骤中构建返回结果(列表)
    2. 通过本机查询获取整数列表。

    【讨论】:

      【解决方案2】:

      通过 JPQL 查询执行:

      @Query(value = "select c.id from Case c WHERE case.name like ?1")
      List<Long> findIDsByName(String name);
      

      【讨论】:

      【解决方案3】:

      最后,我使用了 JPA 中的 select 子句:https://www.objectdb.com/java/jpa/query/jpql/select

      添加 where 条件: https://www.objectdb.com/java/jpa/query/jpql/where

      【讨论】:

        猜你喜欢
        • 2019-07-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-08-06
        • 1970-01-01
        • 2018-11-13
        相关资源
        最近更新 更多