Mysql的分页

来源:互联网 发布:表白网站源码大全 编辑:程序博客网 时间:2024/05/05 16:16

使用mysql数据库 springmvc框架实现mysql分页的例子

mysql数据库的关键字是limit

举例 select * from User limit currpage,perPage

比喻 User表里面有20条语句

currpage     指是指从哪里开始

perPage 一页显示多少条数据

perPage=5的时候

1    5    第一页

6    5    第二页

11   5    第三页

16   5    第四页

 

公式currpage=(Page-1)*perPage  //Page指是第几页 perPage 表示一页显示多少条数据


一, UserDao类的代码

@Repository("userDao")
public Class UserDao{

//分页的代码

public List<User> getAll(int page,int,perPage) {
      String  sql="select * from User limit ?,?";
      return jdbcTemplate.queryForList(sql,new Object[]{page,perPage});
   }

//获得User表里面有多少条数据

public int getcount() {
      String  sql="select * from User";
      return jdbcTemplate.queryForList(sql,null);
  }

}


二,UserServlet类的代码

@Service("userServlet")

public ClassUserServlet{

  @Autowired

  privateUserDaouserDao;

 

  public List<User>getAll(int page,int,perPage){

  returnuserDao.getAll(page,perPage);

  }


  public int getcount(){

  return userDao.getcount();

  }

}


三, UserAction类的代码

@Controller
@RequestMapping("/merchant/merchantelct.do")

public Class UserAction extends BaseAction{

   @Autowired

    privateUserServletuserServlet;

    //一页显示多少条
    private  int perPage=5;
      //当前页码
    private  int page;
     //有多少条数据
    private int sum;
     //总页数
    private  int totalPages;


    public String show(String type){

    //获得总共有多少条数据

   sum=userServlet.getcount();

    //获得总页数

    if (sum % perPage == 0) {
         totalPages=sum / perPage;
     } else {
         totalPages=(sum / perPage) + 1;
     }


   //当type=0时候表示“首页”

    if(type.equals("0")){
            page=1;
     }
     //type=1时候表示“上一页”
     if(type.equals("1")){
         if(page==1){
             page=1;    
          }else {
             page--;
          }    
      }
     //type=2时候表示”下一页“
     if(type.equals("2")){
         if(page==totalPages){
            page=totalPages;
          }else
          {
             page++;
          }
      }

    //type=3时候表示”下一页“    

     if(type.equals("3")){
           page=totalPages;
      } 
 

     List<User> UserList=userServlet.getAll((page-1)*perPage,perPage);         super.getRequest().setAttribute("UserList",UserList);
     super.getRequest().setAttribute("page", page);
     super.getRequest().setAttribute("sum", sum);
     super.getRequest().setAttribute("totalPages", totalPages);

     return "All";

  }

}


四,jsp页面

<a href="/merchant/merchantelct.do?type=0">首页</a>

<a href="/merchant/merchantelct.do?type=1">上一页</a>

<a href="/merchant/merchantelct.do?type=2">下一页</a>

<a href="/merchant/merchantelct.do?type=3">尾页</a>








 

 








 




 




0 0
原创粉丝点击