mybatis分页查询的实现(二) ---阿里插件分页查询


一、下载jar包并导入

  jsqlparser-1.3.jar,下载地址: https://mvnrepository.com/artifact/com.github.jsqlparser/jsqlparser/1.3

  pagehelper-5.1.6.jar,下载地址:https://mvnrepository.com/artifact/com.github.pagehelper/pagehelper/5.1.6

二、配置config.xml

  		<plugins>
  			<plugin interceptor="com.github.pagehelper.PageInterceptor" >
  			</plugin>
  		</plugins>

三、接口方法

public interface UserMapper {
	//分页查询
	public List<User> selectForPage(User user);
}

四、xml

	<select id="selectForPage" resultType="User">
		select * from user 
	</select>

五、测试

public class myTest {

	SqlSession session = MyBatisUtils.openSession();
	UserMapper userMapper = session.getMapper(UserMapper.class);
	
	
	@Test
	public void selectForPage1() {
		User user = new User();
		PageBean bean = new PageBean();
		bean.setCurrentPage(1);
		bean.setPageSize(5);
		Page<User> page = PageHelper.startPage(bean.getCurrentPage(), bean.getPageSize());
		/**
		 * 参数1:要查询第几页
		 * 参数2:每页条数
		 * 参数3:是否查询总条数,默认为true
		 */
		
		List<User> list = userMapper.selectForPage(user);
		for (User user2 : list) {
			System.out.println(user2);
		}
		System.out.println("总条数"+page.getTotal()  + "总页数"+page.getPages());
		MyBatisUtils.closeSession(session);
	}
	
}

六、实现原理

分页插件使用这个方法selectAll(user),然后改造方法,重组sql,执行sql 。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM