2015-06-17 74 views
0

我想实现一个休息控制器的服务,它采用可选的过滤器参数,如名字,姓氏,年龄等。我想使用像下面这样的JpaRepository方法。问题是,如果参数为null,则不会找到记录。春天数据null参数

当参数为空时,我不希望过滤在该字段上发生。有没有一种方法可以用JpaRepository实现这个开箱即用的功能?

Page<Customer> findByLastNameAndByFirstNameAndByAge(String lastName, String firstName, int age, Pageable pageable); 

回答

1

the spring docs表2.2表明,你可以使用类似findByLastnameOrFirstnameOrAge东西,这会忽略空值。

如果没有得到你想要的,你必须使用规范来完成(参见上述文档的第3节)。

+0

因为我需要过滤器的组合,所以或者不行,但它看起来像规范将做的伎俩。谢谢! – redwhite