java pojo..
package com.xyx.common;
import java.util.List;
/**
* 分页
* @author jaychaoqun
*
*/
public class Pager {
private int total_page; //总页数
private int total_count; //总记录数
private int current_page; //当前页
private int page_size; //每页的数量
private int first_page;
private int pre_page;
private int next_page;
private int last_page;
private boolean is_first;
private boolean is_last;
private List list;
public List getList() {
return list;
}
public void setList(List list) {
this.list = list;
}
public int getTotal_page() {
return total_page;
}
public void setTotal_page(int total_page) {
this.total_page = total_page;
}
public int getTotal_count() {
return total_count;
}
public void setTotal_count(int total_count) {
this.total_count = total_count;
}
public int getCurrent_page() {
return current_page;
}
public void setCurrent_page(int current_page) {
this.current_page = current_page;
}
public int getPage_size() {
return page_size;
}
public void setPage_size(int page_size) {
this.page_size = page_size;
}
public int getFirst_page() {
return first_page;
}
public void setFirst_page(int first_page) {
this.first_page = first_page;
}
public int getPre_page() {
return pre_page;
}
public void setPre_page(int pre_page) {
this.pre_page = pre_page;
}
public int getNext_page() {
return next_page;
}
public void setNext_page(int next_page) {
this.next_page = next_page;
}
public int getLast_page() {
return last_page;
}
public void setLast_page(int last_page) {
this.last_page = last_page;
}
public boolean isIs_first() {
return is_first;
}
public void setIs_first(boolean is_first) {
this.is_first = is_first;
}
public boolean isIs_last() {
return is_last;
}
public void setIs_last(boolean is_last) {
this.is_last = is_last;
}
/**
* 分页处理
* @param current_page 当前页
* @param page_size 每页的数量
* @param total_count 总记录数
*/
public void paging(int current_page, int page_size, int total_count){
this.current_page = current_page;
this.page_size = page_size;
this.total_count = total_count;
if(current_page < 1){
this.current_page = 1;
}
this.total_page = (this.total_count + page_size - 1)/page_size;
this.first_page =1;
this.last_page = total_page;
if(this.current_page > 1){
this.pre_page = this.current_page - 1;
}else{
this.pre_page = 1;
}
if(this.current_page < total_page){
this.next_page = this.current_page + 1;
}else{
this.next_page = total_page;
}
if(this.current_page <= 1){
this.is_first = true;
}else{
this.is_first = false;
}
if(this.current_page >= total_page){
this.is_last = true;
}else{
this.is_last = false;
}
}
}
数据访问dao,,使用分类类
/**
* pager query
* @param current_page
* @param page_size
* @return
*/
public Pager getStuList(int current_page,int page_size){
Pager pager = new Pager();
Session se = HibernateSessionFactory.getSession();
int total_count = Integer.parseInt(se.createSQLQuery("select count(*) from t_student")
.list()
.get(0)
.toString()
);
List list = se.createQuery("from Student")
.setMaxResults(page_size)
.setFirstResult((current_page-1)*page_size)
.list();
pager.paging(current_page, page_size, total_count);
pager.setList(list);
HibernateSessionFactory.closeSession();
return pager;
}
这个dao方法返回一个分页对象,在action可以把分页对象射在request里,
public String stuInfoList() throws Exception{
StudentDao dao = new StudentDao();
Pager pager = dao.getStuInfoList(current_page, 10,class_id,ids);
ServletActionContext.getRequest().setAttribute("pager", pager);
return "stuInfoList";
}
jsp显示:
总数:[${requestScope.pager.total_count}]
当前页数:[${requestScope.pager.current_page}/${requestScope.pager.total_page}]
<s:if test="#request.pager.is_first == false">
<a href="student!stuList.action?current_page=${requestScope.pager.first_page}">第一页</a>
<a href="student!stuList.action?current_page=${requestScope.pager.pre_page}">上一页</a>
</s:if>
<s:if test="#request.pager.is_last == false">
<a href="student!stuList.action?current_page=${requestScope.pager.next_page}">下一页</a>
<a href="student!stuList.action?current_page=${requestScope.pager.last_page}">最后一页 </a>
</s:if>
分享到:
相关推荐
经典的java分页类,快来下载吧!!!!!
简述 此包可根据需要不同设置 在线分页 与 离线分页 使用在线分页 办法 直接调用 public List showPage(int pageSize,int page,ArrayList<Object> list) 方法即可。 使用离线分页 办法 调用 public boolean ...
包含3个java分页实现,本人收集打包,其中有一个为转载别人的最强大的java分页
page.java java分页工具类
Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类Java公用分页类
一个简单的分页类 计算 首页 下页 上页 尾页
文档为Java中进行分页的结构,使用了常见的分页结构,以用来返回给前段指定分页范围的数据。
跟我上面的java底层简易封装配套的。有需要的也可以学习下。
就一个java类 调用一个方法就实现分页效果 能够简单实现分页
java分页工具类 java分页工具类 java分页工具类 java分页工具类 java分页工具类 java分页工具类
只需要在控制器中 判断参数 可以在类中 增加函数 添加功能
日常开发中使用比较频繁的分页功能(java实现源码)
Java分页Java分页Java分页Java分页Java分页Java分页Java分页Java分页Java分页
JAVA分页大全 包括了众多的分页方法struts分页...
java 通用分页java 通用分页java 通用分页java 通用分页
自己简单的做了一个初级分页,可以直接拿去应用,希望有帮助
分页 jsp分页类 java代码 web 分页 分页代码