之前介绍了SpringBoot集成Jpa的简单使用,接下来介绍一下使用Jpa连接数据库对数据进行排序、分页、条件查询和过滤操作。首先创建Springboot工程并已经继承JPA依赖,(https://www.cnblogs.com/eternality/p/17391141.html)
1、排序查询
通过findAll方法的Sort类进行排序,根据实体类字段进行排序。descending降序,ascending升序,默认不填为ascending升序。
List<User> mapperAll = userMapper.findAll(Sort.by("id").descending()); mapperAll.forEach(System.out::println);
查询结果:
Sort.by() 里面是一个可变参数,可以传入一个或多个值。
//先根据状态进行排序,然后在根据ID进行排序 List<User> statusAll = userMapper.findAll(Sort.by("status","id").descending()); statusAll.forEach(System.out::println);
设置第一个属性降序,第二个属性升序
Sort sort = Sort.by("status").descending().and(Sort.by("id").ascending()); List<User> diffOb= userMapper.findAll(sort); diffOb.forEach(System.out::println);
如果传入的字段信息,实体类中没有,代码访问会报错。如:
List<User> exceptionAll = userMapper.findAll(Sort.by("en_name").descending()); exceptionAll.forEach(System.out::println);
会报找不到该字段信息异常:
org.springframework.data.mapping.PropertyReferenceException: No