如何使用ExampleMatcher匹配范围内的值?

时间:2019-09-09 09:17:08

标签: spring-boot jpa query-by-example

我有以下Entity类,其中包含字段boxId,name,boxType和modifiedOn:

 @Entity( name = "Box" )
 @Table ( name = "box" )
 class Box{

   @Id
   @Column ( name = "BoxID" )
   @GeneratedValue ( strategy = GenerationType.IDENTITY )
   private Integer boxId;

   @Column ( name = "Name" )
   private String name;

   @Column ( name = "BoxType" )
   private String boxType;

   @Column ( name = "ModifiedOn" )
   private Date modifiedOn;

 }

现在,我想查找所有在特定日期后最后修改的框记录-假设-2018年9月22日。如何使用JPA的示例查询来获得此结果?

我使用过match和exact()匹配以及contains()匹配。

 Example example = Example.of(exampleBoxEntity, ExampleMatcher
                .matchingAll()
                .withMatcher("name", new 
                 ExampleMatcher.GenericPropertyMatcher()
                 .contains())
                .withMatcher("modifiedOn", new 
                 ExampleMatcher.GenericPropertyMatcher()
                 .exact())
                .withIgnoreNullValues()
                .withIgnoreCase());

可以将它们应用于特定范围吗?像是在2018年9月22日之后?

在完全匹配的情况下,我只会在指定的日期修改记录-但是实际上我需要在该日期之后修改所有记录。

0 个答案:

没有答案