关于SpringData中的PagingAndSortingRepository接口怎么使用:
我做了一下总结,并附有代码:
我就以接口中的分页方法为例说一下他的使用方法.
第一步:创建一个Dao层,创建一个了一个名为UserDaoLast的接口让它继承PagingAndSortingRepository
package org.peter.dao;
import org.peter.model.User;
import org.springframework.data.repository.PagingAndSortingRepository;
/**
* Created by Lenovo on 2017/7/31.
*/
public interface UserDaoLast extends PagingAndSortingRepository<User,Long>{
}
第二步:创建一个Service层,在创建一个名为UserServiceLast的类
并且创建一个方法
package org.peter.service;
import org.peter.dao.UserDaoLast;
import org.peter.model.User;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
/**
* Created by Lenovo on 2017/7/31.
*/
@Service
public class UserServiceLast{
@Resource
UserDaoLast userDaoLast;
public Page<User> findAll(){
PageRequest pageRequest = new PageRequest(1,10);
Page<User> page = userDaoLast.findAll(pageRequest);
return page;
}
}
第三步:创建一个main类来做测试
package org.peter;
import org.junit.Test;
import org.peter.model.User;
import org.peter.service.UserServiceLast;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.data.domain.Page;
/**
* Created by Lenovo on 2017/7/31.
*/
public class MainLast {
private ClassPathXmlApplicationContext ctx;
private UserServiceLast userServiceLast;
{
ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
userServiceLast = ctx.getBean(UserServiceLast.class);
}
@Test
public void pageCheck(){
// 页码是从0开始的
Page<User> page = userServiceLast.findAll();
System.out.println("总共多少条数据"+page.getTotalElements());//107
System.out.println("总共多少页"+page.getTotalPages()); //11
System.out.println("第几页"+page.getNumber()); //1
System.out.println("每页多少条"+page.getSize()); // 10
System.out.println(page.getNumberOfElements());//10
System.out.println(page.getContent());
}
}
通过以上三步就可以轻松的实现分压的效果