第七章Spring-data-jpa扩展之JpaSpecificationExecutor
2018-02-08 08:34
537 查看
第七章Spring-data-jpa扩展之JpaSpecificationExecutor
不属于Repository体系,实现一组 JPA Criteria 查询相关的方法Specification:封装 JPA Criteria 查询条件。通常使用匿名内部类的方式来创建该接口的对象
Repository
public interface DeviceRepository extends JpaRepository<Device, Long>, JpaSpecificationExecutor<Device> { List<Device> findByUserId(Long id); }
Service
public interface DeviceService { List<Device> findDeviceByUser(User user); }
Service实现类
// 根据用户id查找 public Page<Device> findByUser(Pageable pageable, Integer id) { Specification<Device> specification = new Specification<Device>() { @Override public Predicate toPredicate(Root<Device> root,CriteriaQuery<?> query, CriteriaBuilder cb) { //root.get后跟实体类的属性,与数据库的字段对应 Path<String> id1 = root.get("user"); query.where(cb.equal(id1, id)); //这种方式使用JPA的API设置了查询条件,所以不需要再返回查询条件Predicate给Spring Data Jpa,故最后return null;即可。 return null; } }; return sRepository().findAll(specification, pageable); } return null; } },pageable); return page.getContent(); } }
相关文章推荐
- 【SpringData】轻松愉快之玩转SpringData( 第5章 JpaSpecificationExecutor接口 第6章 课程总结 )
- spring jpa 扩展 JpaSpecificationExecutor
- spring jpa 扩展 JpaSpecificationExecutor
- Spring Data JPA(3)--JpaRepository和JpaSpecificationExecutor的结合使用
- jpa学习5--spring data jpa 中的JpaSpecificationExecutor和PagingAndSortingRepository分页
- spring data jpa 利用JpaSpecificationExecutor做复杂查询
- 结合SpringDataJPA中的PagingAndSortingRepository和 JpaSpecificationExecutor接口实现大数据量的数据分页查询
- spring data 接口之 JpaRepository,JpaSpecificationExecutor
- spring data 接口之 JpaRepository,JpaSpecificationExecutor
- Spring Boot Data JPA JpaSpecificationExecutor
- spring data 接口之 JpaRepository,JpaSpecificationExecutor
- spring data 之JpaRepository,JpaSpecificationExecutor
- Spring Data JpaSpecificationExecutor 做复杂查询
- spring data 接口之 JpaRepository,JpaSpecificationExecutor
- SpringBoot第二讲利用Spring Data JPA实现数据库的访问(二)_分页和JpaSpecificationExecutor接口介绍
- spring data jpa中继承JpaSpecificationExecutor接口的接口不会被IOC容器所管理
- SpringBoot第二讲 利用Spring Data JPA实现数据库的访问(二)_分页和JpaSpecificationExecutor接口介绍
- SpringDataJpa的Specification查询
- SpringDataJpa的Specification查询
- Spring data jpa 实现简单动态查询的通用Specification方法