关于从mysql取出符合条件的前N条数据的hibernate配置的问题

xinfeiniao 2009-04-10 01:05:55
我现在有一个NEWS(新闻)表,我想将其中的前10条记录取出来,实现的代码如下:
public List searchNews(){
return getSession().createQuery("from News as n order by n.date desc limit 0,10").list();
}
然后在action中将其传到页面
List newses =newManager.searchNews()();
request.setAttribute("news", newses);
可是在页面却是显示出了所有的NEWS中的记录,在百度找下有人说是可能hibernate的配置问题,我的hibernate的配置是:
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://127.0.0.1/oa</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">root</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.show_sql">true</property>
<property name="hibernate.hbm2ddl.auto">update</property>

<property
name="hibernate.cache.provider_class">org.hibernate.cache.HashtableCacheProvider</property>
请高手指点下。
...全文
108 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
xinfeiniao 2009-04-10
  • 打赏
  • 举报
回复
谢谢,解决了,照上楼说的。
  • 打赏
  • 举报
回复
你可以在dao层增加一个方法

public List findByHql(String hql, int firstValue, int maxValue) {
Query q = session.createQuery(hql);
q.setMaxResults(maxValue);
q.setFirstResult(firstValue);
return q.list();
}

我正使用着呢
xinfeiniao 2009-04-10
  • 打赏
  • 举报
回复
谢谢先!!

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧