spring数据动态地组成@query查询

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

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

或者至少是条件部分

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

你能做到吗? 有两个原因没有:

  1. sql注入(spring数据与预处理语句一起工作);
  2. (第一个reasone的结果)spring数据创建查询树并绑定所有params

但是,如果您需要动态查询,可以使用规范 , 按示例查询或Querydsl 。