以下是我的存储库方法
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。
答案 0 :(得分:3)
JPA会将Enum
序号int
存储在数据库表中。
所以你可以做到以下几点。
@Query("select s from Shipment s where Category in (categories) and Quarter between (from.ordinal(), to.ordinal())")