一、无匹配器的情况:
Person person = new Person();
person.setName("test");
Role role = new Role();
role.setName("经理");
person.setRole(role);
... 
Example<Person> ex = Example.of(person); //动态查询 
personRepository.findAll(ex);
personRepository.findAll(ex,pageable);
//分页
二、匹配器多条件组合(自己多动手试试各种各样的条件组合)
        Person person = new Person();
        person.setName(name);
        //默认匹配器:字符串采用精准查询,忽略大小写(文档说不忽略大小写,本人测试时发现是忽略大小写的)
        ExampleMatcher matcher = ExampleMatcher.matching()
//                .withStringMatcher(ExampleMatcher.StringMatcher.CONTAINING)  //改变默认字符串匹配为:模糊查询
//                .withMatcher("name", ExampleMatcher.GenericPropertyMatchers.contains())  //name字段模糊匹配
//                .withMatcher("name", ExampleMatcher.GenericPropertyMatchers.startsWith())  //name字段开头模糊匹配
//                .withMatcher("name", ExampleMatcher.GenericPropertyMatchers.endsWith())  //name字段结尾模糊匹配
//                .withIgnorePaths("id","phone"); //忽略id,phone字段
        Example<Person> ex = Example.of(person,matcher); //动态查询
        return personRepository.findAll(ex);
        retuen personRepository.fiadAll(ex,pageable)  //分页
总结:
(Person) 一对一,多对一可以通过set另外一个实体(Role)的字段来实现动态查询,但是(Person)一对多通过Example来动态查询,本人试过不行(JpaSpecificationExecutor可以),你们又没有idea?

相关文章:

  • 2022-01-31
  • 2021-12-10
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-08-20
  • 2022-12-23
  • 2019-01-08
  • 2021-12-30
  • 2021-09-17
  • 2022-01-29
  • 2022-02-22
相关资源
相似解决方案