使用Spring Data REST和Spring Data JPA,我需要同时根据实体的某些属性任意/部分/全部过滤实体。
例如,使用PersonRepository,搜索具有firstName = something和/或lastLame = some的人和/或someDate之前的生日和/或someOtherDate之后的生日等等.Spring Data Rest允许您搜索多个属性,但仅适用于固定的属性组合,而不适用于重复的相同属性。
我以为我会使用a custom jpa repository implementation实现这一点,并使用规范和
这样的签名实现public Page<Scanner> findByAny(Parameters queryParams, Pageable pageData) {
但看起来你不能这样做 - 它是特别禁止的。 (参见问题:Custom jpa repository method published by spring-data-rest)
阅读更多内容,this SO question and answer已关闭,但您不能多次指定属性,因为它是MVC我不确定它是否会显示在实体的搜索元数据和搜索网址中SDR。
还有另一种在搜索中指定任意元素的好方法吗? (我正在使用spring-data-rest:2.3.0.RELEASE)