最近使用springmvc完成分页功能,遇到了一些问题,百度了一下发现都是一样的。因此贴出自己的解决思路。
一:控制层中
@Value("#{configProperties['schoolPageSize']}")
private String schoolPageSize;@RequestMapping(value="/schoolList")
public ModelAndView schoolList(School school,String page){ //每页显示的条数 int pageSize=Integer.valueOf(schoolPageSize).intValue(); List<School> schoolList=schoolService.findSchoolList(school); ModelAndView modelAndView = new ModelAndView(); //查到的学校总数 int SchoolNum=schoolList.size(); //查到的总用户数 modelAndView.addObject("SchoolNum",SchoolNum); int pageTimes; if(SchoolNum%pageSize == 0) { pageTimes =SchoolNum/pageSize; }else { pageTimes = SchoolNum/pageSize + 1; } modelAndView.addObject("pageTimes", pageTimes); //页面初始的时候page没有值 if(null == page) { page = "1"; } //每页开始的第几条记录 int startRow = (Integer.parseInt(page)-1) * pageSize; List<School> schools= this.schoolService.getschoolByPage(startRow, pageSize); modelAndView.addObject("currentPage", Integer.parseInt(page)); modelAndView.addObject("schools", schools); modelAndView.setViewName("school/schoolList"); return modelAndView; }备注: @Value("#{configProperties['schoolPageSize']}")需要完成配置
springmvc.xml中的配置
<bean id="configProperties" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name="locations"> <list> <value>classpath:value.properties</value> </list> </property></bean>value.properties的配置
schoolPageSize=5(注意没有“;”)
页面的代码
<div class="pagging">
<div class="left">共${SchoolNum}条记录</div> <div class="right"> <c:if test="${currentPage == 1}"> <span class="disabled"><< 前一页</span> </c:if> <c:if test="${currentPage != 1}"> <a href="school/schoolList.action?page=${currentPage-1}"><< 前一页</a> </c:if> <c:if test="${currentPage == 1}"> <span class="current">1</span> </c:if> <c:if test="${currentPage != 1}"> <a href="school/schoolList.action?page=1">1</a> </c:if> <% session.getAttribute("pageTimes"); for(int i=1;i<2;i++) { request.setAttribute("page", i+1); %> <c:if test="${currentPage == page}"> <span class="current"><%=i+1%></span> </c:if> <c:if test="${currentPage != page}"> <a href="school/schoolList.action?page=<%=i+1%>"><%=i+1%></a> </c:if> <%} %> <c:if test="${currentPage == pageTimes}"> <span class="disabled">后一页 >></span> </c:if> <c:if test="${currentPage != pageTimes}"> <a href="school/schoolList.action?page=${currentPage+1}">后一页 >></a> </c:if> </div>