spring data jpa 分页配置 及简单示例
2017-07-18 09:54
375 查看
dao层:
service层:
uer表 主键user_id, good表主键good_id, 对应中间表user_good,外键是good_id,user_id
user 对good是多对多
/*Join
public interface CompetitorGoodRepository extends PagingAndSortingRepository<Good,Long>,JpaSpecificationExecutor{ }
service层:
@Service public class CompetitorServiceImpl{ @Autowired private CompetitorGoodRepository competitorGoodRepository; @Override public Page<Good> findCompetitorList(int page, int size, Long userId) { this.userId=userId; PageRequest pageRequest=this.buildPageRequest(page,size); Page<Good> goodPageList=this.competitorGoodRepository.findAll(new MySpec(),pageRequest); return goodPageList; } private PageRequest buildPageRequest(int page,int size){ Sort sort=new Sort(Sort.Direction.ASC,"goodId"); return new PageRequest(page,size); } //多对多的配置(对应关系借助中间表,且中间表不止外键属性,还有其他属性) private class MySpec implements Specification<Good>{ @Override public Predicate toPredicate(Root<Good> root, CriteriaQuery<?> cq, CriteriaBuilder cb) { SetJoin<Good, UserGood> userUserGoodJoin=root.join(root.getModel().getSet("userGoodSet",UserGood.class),JoinType.INNER); Predicate p2=cb.equal(userUserGoodJoin.get("user").get("userId").as(Long.class),userId); cq.where(p2); return null; } } }
uer表 主键user_id, good表主键good_id, 对应中间表user_good,外键是good_id,user_id
user 对good是多对多
/*Join
相关文章推荐
- Spring Data Jpa - EasyUi Datagrid 分页简单实现(一)
- Spring Data Jpa+SpringMVC+Jquery.pagination.js实现分页示例
- SpringBoot中使用Spring Data Jpa 实现简单的动态查询的两种方法
- Spring Data Jpa 单表多条件删除配置
- Spring依赖注入的简单示例(基于注解配置)
- SpringDataJpa的简单入门使用
- SpringCloud SpringBoot mybatis 分布式微服务(九)Spring Boot中使用Spring-data-jpa让数据访问更简单
- Spring Boot中使用Spring-data-jpa让数据访问更简单、更优雅
- 基于jpa/springData ,hibernate,mybtis的分页
- 文章标题spring-boot + spring-data-jpa 实现简单的增删改查
- spring-data-jpa+hibernate 各种缓存的配置演示
- 【spring data jpa】带有条件的查询后分页和不带条件查询后分页实现
- Spring aop 简单示例——基于XML配置和基于注解配置
- springdatajpa nativeSQL的分页用法和注意事项以及解决防范
- Spring Data JPA的简单使用
- Spring Data Jpa 详解 (配置篇)
- Spring Boot(7)— Spring Boot中使用Spring-data-jpa让数据访问更简单、更优雅
- Spring Data JPA+kkpager实现分页功能实例
- spring-data-jpa+hibernate 各种缓存的配置演示
- Spring Data JPA 简单查询--方法定义规则(详解)