基于ssm的pagehelper分页操作
1,导入pagehelper依赖
<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.1.2</version> <scope>compile</scope> </dependency>
2,配置application.xml
在创建完DataSource对象的bean后,创建sessionfactory对象的时候添加上pagehelper插件
<!-- 创建sqlsessionfactory对象 --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <!--关联连接池--> <property name="dataSource" ref="dataSource"/> <!-- 加载sql映射文件 --> <property name="mapperLocations" value="classpath:mapper/*.xml"/> <!--引入插件--> <property name="plugins"> <array> <!--mybatis插件--> <bean class="com.github.pagehelper.PageInterceptor"> <property name="properties"> <value> <!--helperDialect:连接数据库的类型--> helperDialect=mysql </value> </property> </bean> </array> </property> </bean>
3,编写分页查询的接口
/** * 分页查询 * @param page * @param rows * @return */ @RequestMapping("/listPage") @ResponseBody //转换为json对象 public Map<String ,Object> listPage(Integer page,Integer rows){ //设置分页的参数 PageHelper.startPage(page,rows); //查询所有数据 List<Customer> list = customerService.findAll(); //使用pageinfo封装我们查询类型的结果 PageInfo<Customer> pageInfo = new PageInfo<>(list); //从pageinfo对象取出查询 //总记录数 long total = pageInfo.getTotal(); //当前页数据的列表 List<Customer> cuslist = pageInfo.getList(); result.put("total",total); result.put("rows",cuslist); return result; }
步骤:
-
创建方法,传入参数(Integer page,Integer rows))page当前页码,rows:一页返回多少条数据;
-
设置分页的参数;
-
查询所有数据;
-
使用pageinfo封装我们查询类型的结果
-
从pageinfo对象取出查询
-
添加相应的参数,total:总记录数、cuslist:当前数据
-
最后返回结果
-

浙公网安备 33010602011771号