spring数据动态组合@query查询

Posted

技术标签:

【中文标题】spring数据动态组合@query查询【英文标题】:spring data compose @query query dynamically 【发布时间】:2017-12-13 05:03:32 【问题描述】:

我有一种情况,我必须以某种方法编写一个 JPQL 查询,然后将此查询传递给 spring data 查询方法,以用作@Query 注释中的查询

@Query(value = ":DyanamicQuery")
List<PrizeInsuranceConfiguration> filterConfigurPrizeInsurance(String DyanamicQuery);

或者至少是条件部分

@Query(value = "SELECT c FROM PrizeInsuranceConfiguration c WHERE  :DyanamicConditions")
List<PrizeInsuranceConfiguration> filterConfigurPrizeInsurance(String DyanamicConditions);

【问题讨论】:

【参考方案1】:

做,你可以做到。没有的原因有两个:

    sql 注入(spring 数据与prepared statements 一起工作); (第一个原因的结果)spring数据创建查询树并绑定所有参数

但如果您需要动态查询,您可以使用Specifications、Query by Example 或Querydsl。

【讨论】:

以上是关于spring数据动态组合@query查询的主要内容,如果未能解决你的问题,请参考以下文章