ssh-hibernate中分页的展示
来源:互联网 发布:上海银行淘宝金卡图片 编辑:程序博客网 时间:2024/06/08 16:54
hibernate中分页查询
PageBean相关的实体类
1、pageBean的创建
package com.itheima.bos.utils;import java.util.List;import org.hibernate.criterion.DetachedCriteria;/** * 封装分页属性 * @author Lenovo * */public class PageBean { private int currentPage;//当前页码 private int pageSize;//每页显示的记录数 private DetachedCriteria detachedCriteria;//查询条件 private int total;//总记录数 private List rows;//当前页需要展示的数据集合 public int getCurrentPage() { return currentPage; } public void setCurrentPage(int currentPage) { this.currentPage = currentPage; } public int getPageSize() { return pageSize; } public void setPageSize(int pageSize) { this.pageSize = pageSize; } public DetachedCriteria getDetachedCriteria() { return detachedCriteria; } public void setDetachedCriteria(DetachedCriteria detachedCriteria) { this.detachedCriteria = detachedCriteria; } public int getTotal() { return total; } public void setTotal(int total) { this.total = total; } public List getRows() { return rows; } public void setRows(List rows) { this.rows = rows; }}
2、通用方法中的Dao
/** * 通用的分页查询方法 */ @Override public void pageQuery(PageBean pageBean) { int currentPage=pageBean.getCurrentPage(); int pageSize=pageBean.getPageSize(); DetachedCriteria detachedCriteria=pageBean.getDetachedCriteria(); //查询total detachedCriteria.setProjection(Projections.rowCount());//指定hibernate框架发出SQL的形式 List<Long> countList = (List<Long>) this.getHibernateTemplate().findByCriteria(detachedCriteria); Long count=countList.get(0); pageBean.setTotal(count.intValue()); //查询rows detachedCriteria.setProjection(null);//设置回来 int firstResult=(currentPage-1)*pageSize; int maxResults=pageSize; List rows = this.getHibernateTemplate().findByCriteria(detachedCriteria, firstResult, maxResults); pageBean.setRows(rows); }
3、Action的实现
/** * 查询所有的包括分页查询 * 返回的格式应该是json * @throws IOException */ public String pageQuery() throws IOException{ PageBean pageBean=new PageBean(); pageBean.setCurrentPage(page); pageBean.setPageSize(rows); //创建离线提交查询对象 DetachedCriteria detachedCriteria = DetachedCriteria.forClass(Staff.class); pageBean.setDetachedCriteria(detachedCriteria); staffService.pageQuery(pageBean); //使用json-lib将pageBean对象转为json,通过流出流写回页面 //JSONObject----将单一对象转为json //JSONArray----将数组或者集合对象转为json JsonConfig jsonConfig=new JsonConfig(); //指定哪些属性不需要转json jsonConfig.setExcludes(new String[]{"currentPage","detachedCriteria","pageSize"}); String json = JSONObject.fromObject(pageBean,jsonConfig).toString(); ServletActionContext.getResponse().setContentType("text/json;charset=utf-8"); ServletActionContext.getResponse().getWriter().print(json); return NONE; }
4、页面的展示效果
0 0
- ssh-hibernate中分页的展示
- SSH框架分页展示
- SSH学习之Hibernate的分页查询
- SSH中分页的实现
- SSH分页(Hibernate分页查询)
- hibernate中分页的实现
- ssh整合分页struts2+hibernate
- SSH hibernate 分页的几种实现方式
- SSH分页(Hibernate实现简单分页查询)
- SSH分页(Hibernate实现简单分页查询)
- SSH分页(Hibernate实现简单分页查询)
- [ssh]关于ssh中查询并分页方法的记录
- SSH中分页问题
- ssh中分页
- SSH中Hibernate的DAO的编写
- SSH中hibernate的事务配置
- SSH中Hibernate的使用总结
- 漂亮的layui 分页展示
- thinkphp5 整合plupload实现图片批量上传
- 前端小白Day6-仿照百度制作登录界面
- com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileExcep
- 直播推流基础知识笔记
- Opencv中sort函数
- ssh-hibernate中分页的展示
- mysql压力测试工具tpcc-mysql安装测试使用
- 扫描识别控件Dynamic Web TWAIN v12.3.1发布,更新服务证书
- Python 中两个字典(dict)合并
- 没有vuex的vue案例
- 【jzoj5081】【GDSOI2017第三轮模拟】【Travel Plan】【动态规划】
- JQuery中根据属性或属性值获得元素
- FragmentPagerAdaptrer使用中注意点
- input文本框设置和移除默认值