java的jsp如何分页显示查询结果呢?

2022-04-16 社会 58阅读
//分页类

public class Pager {
private int pageNow = 1;//
private int pageSize = 7;//
private int totalPage;//
private int totalSize;//

public Pager(int pageNow, int totalSize) {
this.pageNow = pageNow;
this.totalSize = totalSize;
}

public int getPageNow() {
return pageNow;
}

public void setPageNow(int pageNow) {
this.pageNow = pageNow;
}

public int getPageSize() {
return pageSize;
}

public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}

public int getTotalPage() {

totalPage = getTotalSize() / getPageSize();
if (totalSize % pageSize != 0)
totalPage++;
return totalPage;
}

public void setTotalPage(int totalPage) {
this.totalPage = totalPage;
}

public int getTotalSize() {
return totalSize;
}

public void setTotalSize(int totalSize) {
this.totalSize = totalSize;
}

public boolean isHasFirst() {

if (pageNow == 1)
return false;
else
return true;
}

public void setHasFirst(boolean hasFirst) {
}

public boolean isHasPre() {
if (this.isHasFirst())
return true;
else
return false;
}

public void setHasPre(boolean hasPre) {
}

public boolean isHasNext() {
if (isHasLast())
return true;
else
return false;
}

public void setHasNext(boolean hasNext) {
}

public boolean isHasLast() {
if (pageNow == this.getTotalPage())
return false;
else
return true;
}

public void setHasLast(boolean hasLast) {
}
}
//service层
public class PageService {
@SuppressWarnings("unchecked")
public List> list(int pageNow, int pageSize, String hql) {
Session session = HibernateSessionFactory.getSession();
Transaction tx = session.beginTransaction();
List objects;
Query query = session.createQuery(hql);
query.setFirstResult(pageSize * (pageNow - 1));
query.setMaxResults(pageSize);
objects = query.list();
tx.commit();
return objects;
}
}
//在action中调用public String listUser() {
String hql = "from Userinfo u";
if (ps.list(pageNow, pageSize, hql) != null) {
userinfos = (List) ps.list(pageNow, pageSize, hql);
Map request = (Map) ActionContext
.getContext().get("request");
Pager page = new Pager(this.getPageNow(), us.getUserSize());
request.put("userinfos", userinfos);
request.put("page", page);
return Action.SUCCESS;
} else {
return Action.LOGIN;
}
}
//jsp中


  
     
    邮箱
    密码
    权限
    
    
  
  
  
    
    
      
        
       
    
    
    value="#oneUser.email" />
    
    value="#oneUser.password" />
    
    
    
         普通用户
    
    
         管理员
    

   
    ' class="STYLE5">删除|
    &pageNow=' target="_self" class="STYLE5">修改
  

  
  
  
    
      
    
      
         
        
        ' target="_self" class="STYLE3" >上一页
        
        
         上一页
        

       
        " target="_self" class="STYLE3">下一页
        
       
        " target="_self" class="STYLE3">下一页
        

        " target="_self" class="STYLE3">尾页
      

    
  



这是采用struts2+hibernate做的,你可以参考一下

声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com