﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-网络中漫步-文章分类-hibernate</title><link>http://www.blogjava.net/Yadira/category/43711.html</link><description>目标实现了，便是光荣；目标不能实现，人生也会因这一路的风雨跋涉变得丰富而充实。这样也就不虚度此生！</description><language>zh-cn</language><lastBuildDate>Sat, 28 Aug 2010 17:06:55 GMT</lastBuildDate><pubDate>Sat, 28 Aug 2010 17:06:55 GMT</pubDate><ttl>60</ttl><item><title>使用hibernate代替mysql中limit进行分页</title><link>http://www.blogjava.net/Yadira/articles/310526.html</link><dc:creator>网络中漫步</dc:creator><author>网络中漫步</author><pubDate>Fri, 22 Jan 2010 07:17:00 GMT</pubDate><guid>http://www.blogjava.net/Yadira/articles/310526.html</guid><wfw:comment>http://www.blogjava.net/Yadira/comments/310526.html</wfw:comment><comments>http://www.blogjava.net/Yadira/articles/310526.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/Yadira/comments/commentRss/310526.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/Yadira/services/trackbacks/310526.html</trackback:ping><description><![CDATA[mysql分页语句很简单：<br />
select * from table&nbsp; limit 开始索引,查寻数量;<br />
<br />
当用hibernate时：<br />
Query query = session.createQuery("from table limit 10,20");<br />
这样有错，hibernate不能直接在hql里写limit，hibernate不识别limit，<br />
解决如下：<br />
public List&lt;User&gt; getUserById(final int userId,final int maxCount,final int firstResult) throws Exception {<br />
&nbsp;&nbsp;final String hql = "from User where userId=? ";<br />
&nbsp;&nbsp;return this.getHibernateTemplate().executeFind(new HibernateCallback() {<br />
&nbsp;&nbsp;&nbsp;public Object doInHibernate(final Session session) throws HibernateException, SQLException {<br />
&nbsp;&nbsp;&nbsp;&nbsp;final Query query = session.createQuery(hql);<br />
&nbsp;&nbsp;&nbsp;&nbsp;query.setParameter(0, userId);<br />
&nbsp;&nbsp;&nbsp;&nbsp;query.setMaxResults(maxCount);<br />
&nbsp;&nbsp;&nbsp;&nbsp;query.setFirstResult(firstResult);&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;return query.list();<br />
&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;});<br />
&nbsp;}
   <img src ="http://www.blogjava.net/Yadira/aggbug/310526.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/Yadira/" target="_blank">网络中漫步</a> 2010-01-22 15:17 <a href="http://www.blogjava.net/Yadira/articles/310526.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>