首页 > 解决方案 > 如何动态选择实体的特定列?JPA/查询DSL

问题描述

我可以通过 querydsl 或 Spring Data JPA 实现以下内容吗?

  1. 我有一张桌子(列:A、B、C)
  2. 我想选择实体(表)的特定列
  3. 特定列定义为列表。(每个元素都匹配列名)

谢谢你。

标签: springspring-bootjpaspring-data-jpaquerydsl

解决方案


在您的服务中,您可以使用类似于

private List<Object[]> selectByColumnNames(ArrayList<String> columnNames) {
    return entityManager.createQuery("select " + StringUtils.join(columnNames, ",") + " from YourEntityName")
            .getResultList();
}

推荐阅读