jpa之PagingAndSortingRepository带分页查询
生活随笔
收集整理的這篇文章主要介紹了
jpa之PagingAndSortingRepository带分页查询
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.1.? Dao接口繼承PagingAndSortingRepository接口
| PersonDao.java |
| package com.morris.dao.inter;import org.springframework.data.repository.PagingAndSortingRepository;import com.morris.entity.Person;public interface PersonDao extends PagingAndSortingRepository<Person, Integer>{} ? |
1.2.? 使用PagingAndSortingRepository接口的方法
1.2.1.??新增
public void save(Person person) {personDao.save(person);}
1.2.2.??刪除
public void delete(Person person) {personDao.delete(person);}public void delete(Integer id) {personDao.delete(id);}
1.2.3.??修改
public void update(Person person) {personDao.save(person); }
1.2.4.??查詢
public Person findById(Integer id) {Person person = personDao.findOne(id);return person;}public Iterable<Person> findAll() {Iterable<Person> persons = personDao.findAll();return persons;}1.2.5.??分頁查詢
public Iterable<Person> findAll(Pageable pageable) {Page<Person> persons = personDao.findAll(pageable);return persons;}
其中Pageable是一個接口,具體的實現類為PageRequest,下面為PageRequest的一個構造方法
| public PageRequest(int page, int size){this(page, size, null);} |
只需要指定分頁時頁數和每頁的大小即可.
1.3.? 源代碼
| IPersonService |
| package com.morris.service.inter; import org.springframework.data.domain.Pageable; import com.morris.entity.Person;public interface IPersonService {void save(Person person);void delete(Person person);void delete(Integer id);void update(Person person);Person findById(Integer id);Iterable<Person> findAll();Iterable<Person> findAll(Pageable pageable); } ? |
| PersonServiceImpl.java |
| package com.morris.service.impl;import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Page; import org.springframework.data.domain.Pageable; import org.springframework.stereotype.Service;import com.morris.dao.inter.PersonDao; import com.morris.entity.Person; import com.morris.service.inter.IPersonService;@Service("personService") public class PersonServiceImpl implements IPersonService {@Autowiredprivate PersonDao personDao;public void save(Person person) {personDao.save(person);}public void delete(Person person) {personDao.delete(person);}public void delete(Integer id) {personDao.delete(id);}public void update(Person person) {personDao.save(person); }public Person findById(Integer id) {Person person = personDao.findOne(id);return person;}public Iterable<Person> findAll() {Iterable<Person> persons = personDao.findAll();return persons;}public Iterable<Person> findAll(Pageable pageable) {Page<Person> persons = personDao.findAll(pageable);return persons;}} |
總結
以上是生活随笔為你收集整理的jpa之PagingAndSortingRepository带分页查询的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: spring boot 架构问题 时间处
- 下一篇: 注解@PostConstruct与@Pr