【问题标题】:Spring Data JPA Select Distinct dynamic columns based on list of string inputSpring Data JPA 根据字符串输入列表选择不同的动态列
【发布时间】:2020-12-31 02:54:37
【问题描述】:

我想根据我的输入选择列 (List )

@Entity
@Table
public class Product {
  @Id
  private Long id;
  
  private String name;
  private String price;
}

我知道要选择不同的特定列,我可以使用 @Query("SELECT DISTINCT name FROM TABLE") 但是,我想让用户灵活地选择他们想要的列。例如List columns = Arrays.asList(["name", "price"])。然后,这将从名称和价格列中进行选择。

【问题讨论】:

    标签: spring-data-jpa


    【解决方案1】:

    为此创建一个custom method implementation 并使用以下之一(或其许多变体)

    • 使用字符串连接构造 SQL 或 JPQL 查询(注意不要引入 SQL 注入漏洞)。
    • 使用某种标准 API,例如
      • JPA 标准 API
      • 查询dsl
      • JOOQ

    【讨论】:

      猜你喜欢
      • 2023-02-03
      • 2019-10-11
      • 2020-07-31
      • 2019-02-15
      • 2016-03-14
      • 2015-05-08
      • 2016-05-23
      • 1970-01-01
      • 2020-01-23
      相关资源
      最近更新 更多