编程语言
首页 > 编程语言> > java-具有集合参数的Spring-Data @Query

java-具有集合参数的Spring-Data @Query

作者:互联网

下面是我的存储库方法

List<Shipment> findByProductCategoriesBetweenQuarter( Set<Category> categories, Quarter from, Quarter to)

其中Category是一个实体,Quarter是@Embeddable,如下所示

class Quarter {
 int year;
 Quarters q; //Enum 
}

我想使用@Query与以下代表性查询创建自定义存储库impl

@Query("select s from Shipment s where Category in (categories) and Quarter between (from, to)")

看起来@Query可以很好地与基元一起使用,找不到可以帮助我实现上述情况的示例.

所以这里有几个问题
1.有可能吗
2.如果可能,请提供参考.

PS:现在不能执行QueryDSL.

解决方法:

JPA将枚举序数存储为int在数据库表中.

因此,您可以执行以下操作.

@Query("select s from Shipment s where Category in (categories) and Quarter between (from.ordinal(), to.ordinal())")

标签:spring-data-jpa,spring-data,spring,java
来源: https://codeday.me/bug/20191118/2024716.html