您的位置:首页 > 编程语言 > Java开发

Spring boot data JPA 自定义JPQL语句,以及PagingAndSortingRepository接口实现分页查询

2018-04-01 22:13 1346 查看
JPA本身并不是一种框架,是一种规范,其全称是Java Persistence API,是是Sun官方提出的Java持久化规范,而他的出现主要是为了简化现有的持久化开发工作和整合ORM技术,并且其是在充分吸收了现有Hibernate,TopLink,JDO等ORM框架的基础上发展而来的,具有易于使用,伸缩性强等优点。
我们可以通过创建一个接口并继承CrudRepository来替代dao层的增删改查





我们可以看CrudRepository其实是继承了Repository类
我们可以自己定义接口继承Repository,编写自己的查询语句来实现数据的操作。
有这么几点需要强调下:
1. Repository是一个空接口,即是一个标记接口;
2. 若我们定义的接口继承了Repository,则该接口会被IOC容器识别为一个Repository Bean纳入到IOC容器中,进而可以在该接口中定义满足一定规范的方法。
3. 实际上也可以通过@RepositoryDefinition,注解来替代继承Repository接口。
4. 查询方法以find | read | get开头;
5. 涉及查询条件时,条件的属性用条件关键字连接,要注意的是条件属性以首字母大写。
6.使用@Query注解可以自定义JPQL语句实现更灵活的查询。



当我们需要用到分页查询的时候,我们定义的接口需要继承PagingAndSortingRepository接口来实现分页
该接口提供了分页与排序功能   
 --Iterable<T> findAll(Sort sort); //排序    

--Page<T> findAll(Pageable pageable); //分页查询(含排序功能)



Service层





Controller层



运行结果:



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: