Hibernate分页查询

Hibernate分页查询代码:

Query query = getSession().createSQLQuery(sql).addEntity("app", Application.class)
				.addEntity("g", Gameversion.class);

		query.setParameter(0, id);
		query.setParameter(1, ua);
		query.setParameter(2, platform);

		PageControl pc = PageThreadLocal.getPagination();

		query.setMaxResults(pc.getPagesize());
		query.setFirstResult((pc.getPageno() - 1) * pc.getPagesize());

		List<Object[]> resultlist = query.list();

 代码基于sql查询,

createSQLQuery(sql)

返回一个SQLQuery。

.addEntity("app", Application.class)
				.addEntity("g", Gameversion.class);

表示查询返回的结果是Application和Gameversion两个对象组成的数组,"app"和"g"表示sql语句中对应表的别名。

PageControl pc = PageThreadLocal.getPagination();

这端代码从ThreadLocal中获取当前线程的PageControl对象。

最后通过调用:

query.setMaxResults(pc.getPagesize());
		query.setFirstResult((pc.getPageno() - 1) * pc.getPagesize());

设置本次查询的记录范围

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值