maven+spring+mybatis实现分页功能PageHelper(参数方式)

ssm环境加入PageHelper插件步骤:
1.修改pom.xml,添加pageHelper所需要的jar包,我使用的时候最新版本是5.0.1,具体PageHelper参考文档:https://github.com/pagehelper/Mybatis-PageHelper/blob/master/wikis/zh/HowToUse.md
代码如下:

<dependency>
     <groupId>com.github.pagehelper</groupId>
     <artifactId>pagehelper</artifactId>
     <version>5.0.1</version>
</dependency>

2.,在mybatis配置文件(sqlMapConfig.xml)中加入pageHelper插件代码如下:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <!-- 全局setting配置 -->
    <!-- 注意顺序!!!!!!!! -->
    <!-- properties?,settings?,resultObjectFactory?typeAlias*,typeHandler*,transactionManager?,sqlMap -->
    <!-- ELEMENT configuration (properties?, settings?, typeAliases?, typeHandlers?, 
        objectFactory?, objectWrapperFactory?, plugins?, environments?, databaseIdProvider?, 
        mappers? -->


    <settings>
        <!-- 打印查询语句 -->
        <setting name="logImpl" value="STDOUT_LOGGING" />
    </settings>


    <!-- 别名 -->
    <typeAliases>
        <!-- 批量扫描避免 -->
        <package name="com.amos.dgwserver.po" />
    </typeAliases>


    <!-- 以下为pageHelper插件引入 -->
    <plugins>
        <!-- com.github.pagehelper为PageHelper类所在包名 -->
        <plugin interceptor="com.github.pagehelper.PageInterceptor">
            <!-- 使用下面的方式配置参数,后面会有所有的参数介绍 -->
            <property name="supportMethodsArguments" value="true" />
            <property name="params" value="pageNum=pageNumKey;pageSize=pageSizeKey;" />
        </plugin>
    </plugins>


    <!-- 配置mapper 使用整合包进行mapper扫描 必须遵循 mapper.xml和mapper.java文件同名且在一个目录 -->




</configuration>

注意:引入插件的时候注意plugins的顺序

3.在java代码中使用
使用参数方式在mapper的参数中一定要包含两个参数pageNumKey 和 pageSizeKey(sqlMapConfig.xml中映射过,源参数为pageNum/pageSize,与我们自己的参数冲突所以映射)

//设置pageHelper分页参数(当前第几页)
taskBean.setPageNumKey(Integer.valueOf(taskBean.getCurrent()).intValue());
//设置pageHelper分页参数(一页多少条)
taskBean.setPageSizeKey(Integer.valueOf(taskBean.getPageSize()).intValue());
//进行查询,会自动分页
List<Task> list = taskMapper.findTask(taskBean);

TaskBean 如下:

public class TaskBean extends Task{

    /**
     * 当前第几页,分页插件必须
     */
    private int pageNumKey;

    /**
     * 一页多少条,分页插件必须
     */
    private int pageSizeKey;
}

3步完成分页。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值