ssm框架数据库取数据在前台分页显示

jsp代码

<div class="m_connect_page">
	<p>共<span style="font-size: 20px;">${pageUtil.pageCount }</span>页</p>
		<div class="page_limit">
		<ul>
		<li><a href="index.jsp?pageIndex=1" >首页</a></li>
		<li><a  href="index.jsp?pageIndex=${pageUtil.pageIndex>1?pageUtil.pageIndex-1:1}">上一页</a></li>
		<c:forEach begin="1" end="${pageUtil.pageCount}" var="i"> 
		   <c:choose>
		     <c:when test="${i==pageUtil.pageIndex}">         
         		  <li><a href="index.jsp?pageIndex=${i}" style="background: #c90a16;color: white;">${i }</a></li>
         		  </c:when> 
			  <c:otherwise>
         		  <li><a href="index.jsp?pageIndex=${i}">${i }</a></li>									
			  </c:otherwise>
		   </c:choose>
       	       </c:forEach>   
	       <li ><a  href="index.jsp?pageIndex=${pageUtil.pageIndex<pageUtil.pageCount?pageUtil.pageIndex+1:pageUtil.pageCount}">下一页</a></li>
	       <li ><a href="index.jsp?pageIndex=${pageUtil.pageCount}">尾页</a></li>
	       </ul>
	       </div>
</div>

pageutil工具类代码

package com.etc.util;

import java.util.List;

public class PageUtil<T> {

	// 属性有 总记录数,总页数,当前页,每页大小,当前页的数据

	private int pageNumber;
	private int pageCount;
	private int pageIndex;
	private int pageSize;
	private List<T> list;
	public int getPageNumber() {
		return pageNumber;
	}
	public void setPageNumber(int pageNumber) {
		this.pageNumber = pageNumber;
	}
	public int getPageCount() {
		return pageCount;
	}
	public void setPageCount(int pageCount) {
		this.pageCount = pageCount;
	}
	public int getPageIndex() {
		return pageIndex;
	}
	public void setPageIndex(int pageIndex) {
		this.pageIndex = pageIndex;
	}
	public int getPageSize() {
		return pageSize;
	}
	public void setPageSize(int pageSize) {
		this.pageSize = pageSize;
	}
	public List<T> getList() {
		return list;
	}
	public void setList(List<T> list) {
		this.list = list;
	}
	
}

croller类主要代码

//pageindex为当前页
		int pageIndex =1;
		if(request.getParameter("pageIndex")!=null)
			pageIndex = Integer.parseInt(request.getParameter("pageIndex"));
		
		if(id==null||"".equals(id)){
			//从后台取出bloglist,10表示pagesize=10,每页10条数据,
			List<Blog>bloglist=blogRecommendService.getAllBlogsPage(pageIndex,10);
			//将bloglist封装到pageutil类中
			PageUtil<Blog>pageUtil=new PageUtil<Blog>();
			pageUtil.setList(bloglist);
			//pagenumber表示共多少条数据
			int pageNumber=blogRecommendService.getBlogsPageCount();
			//pagecount表示多少页
			int pageCount=(int)Math.ceil(pageNumber/10);
			if(pageCount<1)
				 pageCount=1;
			pageUtil.setPageCount(pageCount);
			pageUtil.setPageNumber(pageNumber);
			pageUtil.setPageIndex(pageIndex);
			//System.out.println("filer2"+bloglist); 
			request.setAttribute("blogallpages", bloglist);
			request.setAttribute("pageUtil", pageUtil);

service层主要代码

public List<Blog> getAllBlogsPage(int pageIndex,int pageSize){
		List<Blog> list=blogDao.getBlogsPage( (pageIndex-1) * pageSize, pageSize,null);
		return list;
	}
public int getBlogsPageCount(){
		return blogDao.getBlogsPageCount(null);
	}

dao层主要代码

/**
	 * 以分页形式获取博客列表
	 * 
	 * @param pageIndex
	 *            表示当前页数,如果没有,则表示不进行分页搜索
	 * @param pageSize
	 *            表示每页大小,如果没有,则表示不进行分页搜索
	 * @param blog
	 *            是一个Blog实体,查询条件,可以没有,条件为以下几种之一<br/>
	 *            1. 博客标题,模糊搜索<br/>
	 *            2. 用户编号 + 个人分类编号<br/>
	 *            3. 用户编号<br/>
	 *            4. 博客分类编号<br/>
	 *            5. 个人分类编号<br/>
	 *            6. 发布时间<br/>
	 *            7. 博客状态<br/>
	 *            8. 博客举报数(可以查询举报数大于等于指定数量的博客)<br/>
	 * @return 查询的博客列表集合
	 */
	List<Blog> getBlogsPage(@Param("pageIndex") Integer pageIndex,
			@Param("pageSize") Integer pageSize, @Param("blog") Blog blog);
int getBlogsPageCount(@Param("blog") Blog blog);

dao.xml取数据代码省略



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值