java hibernate分页_java_Hibernate分页的两种实现方法,本文实例讲述了Hibernate分页的 - phpStudy...

Hibernate分页的两种实现方法

本文实例讲述了Hibernate分页的两种实现方法。分享给大家供大家参考,具体如下:

1. criteria分页

public Page getPage(int currentPage,int pageSize,Criterion...crts){

Criteria c=session.createCriteria(House.class);

List list=null;

for (int i = 0; i < crts.length; i++) {

c.add(crts[i]);

}

c.setProjection(Projections.rowCount());

int totalRecord=Integer.valueOf(c.uniqueResult().toString());

c.setProjection(null);

c.setFirstResult((pageSize)*(currentPage-1));

c.setMaxResults(pageSize);

list=c.list();

Page page=new Page();

page.setCurrentPage(currentPage);

page.setPageSize(pageSize);

page.setTotalRecord(totalRecord);

page.setList(list);

return page;

}

2. hql分页

public Page getPage(int currentPage,int pageSize,String hql,Object...args){

String countHql="select count(*) "+hql.substring(hql.indexOf("from"));

Session session=HibernateUtil.getInstance().getSession();

Query query=session.createQuery(countHql);

for (int i = 0; i < args.length; i++) {

query.setParameter(i, args[i]);

}

int totalRecord=Integer.valueOf(query.uniqueResult()+"");

query=session.createQuery(hql);

for (int i = 0; i < args.length; i++) {

query.setParameter(i, args[i]);

}

query.setFirstResult(pageSize*(currentPage-1));

query.setMaxResults(pageSize);

List list=(List)query.list();

Page page=new Page();

page.setCurrentPage(currentPage);

page.setPageSize(pageSize);

page.setTotalRecord(totalRecord);

page.setList(list);

return page;

}

希望本文所述对大家基于Hibernate框架的Java程序设计有所帮助。相关阅读:

微信企业号开发之微信考勤百度地图定位

基于UIControl控件实现ios点赞功能

浅析Javascript ES6中的原生Promise

C语言中获取和改变目录的相关函数总结

GridView控件实现数据的修改(第9节)

C#中的文件路径获取函数和文件名字获取函数小结

ORACLE EXP不能导出空表的原因分析及解决方法

C#开源的AOP框架--KingAOP基础

Win10系统分辨率不正确如何调整

java中使用双向链表实现贪吃蛇程序源码分享

解析Android横竖屏切换的问题

win7系统使用打印机设备提示缺少VSPRINT7.OCX的解决方法

PHP实现的通过参数生成MYSQL语句类完整实例

JQuery设置文本框和密码框得到焦点时的样式

引用和引用提供了关于在phpstudy中安装php扩展的指南。根据这些指南,你可以将php_yaf.dll文件放置在phpstudy的PHP路径下,在php.ini文件中手动添加extension=yaf的配置。具体来说,你可以将php_yaf.dll文件复制到D:\phpstudy_pro\Extensions\php\php7.3.4nts\ext路径下,并在php.ini文件中添加extension=yaf配置项。这样就可以在phpstudy的面板中启用yaf扩展了。引用则提供了一个可能导致问题的原因,即项目使用的php版本与cmd的版本不兼容。你可以通过检查项目使用的php版本是否与phpstudy中的版本一致来确认这一点。如果版本不一致,可以在phpstudy中切换php版本或者调整项目的php版本。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [阿里云服务下安装Composer时出现 错误:添加到用户路径:C:/phpStudy/Extensions/php/php7.3.4nts 安装无法...](https://blog.csdn.net/qq_42345116/article/details/122595160)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [php7.3.4可用yaf扩展下载phpstudy小皮面板php_yaf.dll(亲测100%可用)](https://download.csdn.net/download/lingyun820/16593737)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [执行php命令行出现 Failed loading D:\phpStudy\php\php7.3.4nts\ext\php_xdebug.dll](https://blog.csdn.net/weixin_42079053/article/details/105618234)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值