使用对象作为主要条件时如何在选择之间使用 SpringData findAll()?
Posted
技术标签:
【中文标题】使用对象作为主要条件时如何在选择之间使用 SpringData findAll()?【英文标题】:how to use SpringData findAll() between select when using an object as major condition? 【发布时间】:2019-01-04 12:29:40 【问题描述】:所以SpringData中有一个方法findAll(Pageable pageable,Condition condition) ;
,
通常我会像findAll(pageable,myobject)
一样使用它。
问题是在选择某个字段范围内的一些记录时,比如选择createDate在A和B之间的对象,如何使用findAll()
?
我试过findAllByCreateDateAfterAndCreateDateBefore(Pageable pageable,Date a,Date b)
;
但是这里我不能将myObj作为条件放入方法中,当myObj中的某些字段不确定是否将其用作条件时会造成很多麻烦。
【问题讨论】:
你能发布你的实体类吗? 【参考方案1】:您可以简单地使用 JPA 规范来执行此操作,然后:
fun findAll(spec: Specification<YourObject>, pageable: Pageable): Page<YourObject>
这里是如何使用的简单示例:
JPA Specification example
【讨论】:
谢谢,但是springdata中有什么方法会更方便吗? 规范非常方便,威力巨大。您几乎可以定义所有内容。如果我的回答适合您的问题,请投票或接受。以上是关于使用对象作为主要条件时如何在选择之间使用 SpringData findAll()?的主要内容,如果未能解决你的问题,请参考以下文章
Wordpress ACF 选择:动态使用类别作为选择时仅返回第一个对象