SpringMVC+MyBatis下使用Pagehelper插件实现分页功能

1.首先在项目中添加PageHelper的Maven依赖

**pom.xml添加分页插件依赖**
	  <!-- mybatis 分页插件 -->
	  <dependency>
		  <groupId>com.github.pagehelper</groupId>
		  <artifactId>pagehelper</artifactId>
		  <version>4.1.6</version>
	  </dependency>

2.在已经配置好的mybatis配置文件中添加对 PageHelper 插件的属性配置

<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
		<property name="dataSource" ref="dataSource" />
		<property name="mapperLocations" value="classpath:sqlMapper/*.xml" />
		<property name="plugins">
			<array>
				<bean class="com.github.pagehelper.PageHelper">
					<property name="properties">
						<value>dialect=mysql</value>
					</property>

				</bean>
			</array>
		</property>
	</bean>

3.在Service层中直接调用

        List<PaperResearch> list = null;
        try {

            //引入分页查询,使用PageHelper分页功能
            //在查询之前传入当前页,然后多少记录
            /**
             * pageNum:当前页

             sizeNum:每页显示条数

             count :是否查询总条数 (true:查询 ,false:不查询)
             */
            PageHelper.startPage(Integer.valueOf(pageNum), 5,true);
            list = paperResearchMapper.selectByExample(paperResearchExample);

            PageInfo<PaperResearch> page=new PageInfo<PaperResearch>(list);
            returnMap.put("page", page);

            System.out.println("总数量:" + page.getTotal());
            System.out.println("当前页查询记录:" + page.getList().size());
            System.out.println("当前页码:" + page.getPageNum());
            System.out.println("每页显示数量:" + page.getPageSize());
            System.out.println("总页:" + page.getPages());
        } catch (Exception e) {
            e.printStackTrace();
        }

注意
1.当一个方法中有多个查询语句时,只有紧跟在PageHelper.starPage()方法后的查询结果才会分页。
2.pageHelper是线程安全所以 查询以后对结果进行分页,如果有需要处理list的 逻辑在分页以后进行处理,不然会出现分页失效的情况。
3.pagehelper.start() 默认初始位置为从1开始,pageNum传0,会查不出结果。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
智能排班系统是一个应用了Spring、Spring MVC、MyBatisPageHelper等技术的系统。Spring是一个开源的Java开发框架,提供了依赖注入和面向切面编程等功能,可以简化应用程序开发的复杂性。Spring框架的主要特点是易于扩展和集成其他框架。 Spring MVC是Spring框架中的模块,用于开发基于Model-View-Controller模式的Web应用程序。它通过请求映射和视图解析等功能,将用户请求和响应进行有效地处理和分发。 MyBatis是一种Java持久层框架,通过XML或注解对数据库操作进行配置,提供了对SQL语句的执行和结果的映射功能。它简化了数据库访问的复杂性,提供了更好的SQL控制和性能优化。 PageHelper是一个开源的MyBatis物理分页件,可以自动地对查询结果进行分页处理。它提供了简单的配置和使用方式,能够有效地减轻数据库的查询压力,提高系统性能。 GitHub是一个基于Git版本控制系统的代码托管平台,开发人员可以在上面创建和管理项目的代码仓库。它提供了多人协同开发、版本控制、代码审查、问题追踪等功能,能够有效地提高开发效率和代码质量。 综上所述,智能排班系统应用了Spring、Spring MVC、MyBatisPageHelper等技术,通过依赖注入、面向切面编程、模型-视图-控制器模式和物理分页等功能实现了对数据库操作的简化、Web应用程序的高效处理和查询结果的分页处理。同时,利用GitHub进行代码托管,实现了多人协同开发和版本控制,提高了系统的可维护性和代码的质量。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值