Bla*_*hop 5 spring hibernate spring-mvc spring-data spring-data-jpa
我正在按如下方式使用Spring存储库,以便按日期范围进行过滤
public interface CustomerRepo extends CrudRepository<Customer, Long> {
public List<Customer> findByCreatedBetween(LocalDate start, LocalDate end);
}
Run Code Online (Sandbox Code Playgroud)
它非常简单,而且运行良好,但是现在我需要扩展我的休息服务,以考虑其他过滤条件,例如,排序或不排序,按城市和国家/地区进行过滤。调用服务时,可能会设置一些参数,而没有设置其他参数。当然,我无法创建诸如findByCreatedBetween之类的方法来考虑所有可能的数据组合。处理这种情况的最佳方法是什么?
谢谢 !
看看这个帖子:
您还可以“以旧方式”实现存储库,即将entityManager 注入到存储库中并创建接受自定义条件对象的findByCriteria 方法。在这里找到标准 API 文档:https://docs.jboss.org/hibernate/entitymanager/3.5/reference/en/html/querycriteria.html
标准 API 的另一种替代方法是使用 JPQL,您可以在其中根据相同的标准创建动态查询字符串。JPQL参考:http://docs.oracle.com/javaee/6/tutorial/doc/bnbtg.html
| 归档时间: |
|
| 查看次数: |
10887 次 |
| 最近记录: |