Java分页PageHelper插件使用
第一次使用分页插件,在百度查找很多资料,分享一下自己使用过程。
导入依赖
<!-- https://mvnrepository.com/artifact/com.github.pagehelper/pagehelper -->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.2.0</version>
</dependency>
配置到spring 和mybait 整合的配置文件中
<!--3.创建sqlSessionFactory-->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"></property>
<!--配置mybatis 插件-->
<property name="plugins">
<set>
<!--配置pageHelper 分页插件-->
<bean class="com.github.pagehelper.PageInterceptor">
<property name="properties">
<props>
<!--方言:-->
<prop key="helperDialect">mysql</prop>
</props>
</property>
</bean>
</set>
</property>
</bean>
Handler示例代码
@RequestMapping("/findProductByCategory")
public String findProductByCategory(@RequestParam(defaultValue = "1")int pnum, String category, Model model){
// System.out.println("查询类别:"+category);
PageHelper.startPage(pnum,4);
List<Product> products = productService.findProductByCategory(category);
PageInfo pageInfo = new PageInfo(products);
// System.out.println(pageInfo.getList());
model.addAttribute("pageInfo",pageInfo);
model.addAttribute("category",category);
return "/client/product_list.jsp";
}
JSP页面分页跳转部分代码
<c:if test="${pageInfo.pageNum!=1}">
<li class="nextPage">
<a href="${pageContext.request.contextPath}/client/product/findProductByCategory?pnum=${pageInfo.pageNum-1}&category=${category}"><<上一页</a>
</li>
</c:if>
<c:if test="${pageInfo.pageNum==1}">
<li class="disablepage"><<上一页</li>
</c:if>
<c:forEach begin="1" end="${pageInfo.pages}" var="pageNum">
<c:if test="${pageInfo.pageNum==pageNum}">
<li class="currentpage">${pageNum}</li>
</c:if>
<c:if test="${pageNum!=pageInfo.pageNum}">
<li><a href="${pageContext.request.contextPath}/client/product/findProductByCategory?pnum=${pageNum}&category=${category}">${pageNum}</a>
</li>
</c:if>
</c:forEach>
<c:if test="${pageInfo.pageNum==pageInfo.pages||pageInfo.pages==0}">
<li class="disablepage">下一页 >></li>
</c:if>
<c:if test="${pageInfo.pageNum!=pageInfo.pages&&pageInfo.pages!=0}">
<li class="nextpage">
<a href="${pageContext.request.contextPath}/client/product/findProductByCategory?pnum=${pageInfo.pageNum+1}&category=${category}">下一页
>></a>
</li>
</c:if>