【用Struts2实现列表显示和分页功能】

以下是在前两天一个项目中的分页功能截取。

  BlogDAO.java文件

  [java]

  /** 根据条件(默认一张表所有数据)返回多条记录 */

  public List<Blog> list(String kw,Integer pageCur,Integer pageSize) {

  List<Blog> list = null;

  Integer limitaInteger = (pageCur-1)*pageSize;

  Integer limitbInteger = pageCur*pageSize;

  Object[] params = {limitaInteger,limitbInteger};//代入的参数列表

  String sqlWhere = "";

  String sql = "select * from csdn_blog where first=1 ";

  if(kw!=null && !kw.equals("")) {

  sqlWhere = " and topic like '%"+kw+"%'";

  }

  sql += sqlWhere;

  sql += " order by id desc limit ?,?";

  ResultSetHandler<List<Blog》 rsh = new BeanListHandler<Blog>(Blog.class);//把结果集转成BeanList

  try {

  list = qr.query(getConn(), sql, rsh, params);   //调用查询接口的查询函数

  } catch (SQLException e) {

  e.printStackTrace();

  }

  return list;

  }

  BlogActin.java文件

  [java]

  private Integer pagenum;//页码

  [java] view plaincopy

  private List<Blog> allblogs;

  并提供set  get 方法

  [java]

  public List<Blog> getAllblogs() {

  return allblogs;

  }

  public void setAllblogs(List<Blog> allblogs) {

  this.allblogs = allblogs;

  }

  [java]

  public Integer getPagenum() {

  return pagenum;

  }

  public void setPagenum(Integer pagenum) {

  this.pagenum = pagenum;

  }

  列表方法

  [java]

  /** 显示博客列表信息 */

  public String alllist() {

  request=ServletActionContext.getRequest();

  blogtopic=request.getParameter("blogtopic");

  allblogs=blogDAO.list(blogtopic, pagenum, 10);

  num_allblog=blogDAO.countAllNum(blogtopic);

  num_allblogpage=num_allblog/10+1;

  return "index";

  }

posted @ 2013-09-18 15:39  豆豆逗逗  阅读(191)  评论(0编辑  收藏  举报