1. 导入PageHelper 我这里是pom

    <dependency>
        <groupId>com.github.pagehelper</groupId>
        <artifactId>pagehelper</artifactId>
        <version>5.2.0</version>
    </dependency>
    
  2. 配置拦截器插件,SSM整合中放在Spring跟Mybatis整合的xml中

    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
        <property name="dataSource" ref="dataSource"/>
        <property name="configLocation" value="classpath:mybatis-config.xml"/>
        <property name="plugins">
            <set>
                <bean id="pageInterceptor" class="com.github.pagehelper.PageInterceptor">
                    <property name="properties">
                        <props>
                            <prop key="helperDialect">mysql</prop>
                        </props>
                    </property>
                </bean>
            </set>
        </property>
    </bean>
    
  3. Service 简单调用demo
@Override
public List<Emp> getEmps(int nowPage, int PageSize) {
    // nowPage 当前页 PageSize 大小
    PageHelper.startPage(nowPage,PageSize);
    // 这里是你的dao层sql
    List<Emp> emps = empMapper.getEmps();
    // 将dao获取的数据封装进 PageInfo
    PageInfo<Emp> pageInfo = new PageInfo(emps);
    // 这里可以直接返回pageInfo 或者像我这样转为list在返回
    return pageInfo.getList();
}
  1. 调用效果
@Test
public void test1(){
    ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
    EmpServiceImpl empServiceImpl = context.getBean("empServiceImpl", EmpServiceImpl.class);
    List<Emp> emps = empServiceImpl.getEmps(1, 5);
    for (Emp emp : emps) {
        System.out.println(emp.toString());
    }
}

1.PNG

最后编辑:2020年10月16日 ©著作权归作者所有

发表评论