我有一个 spring MVC 应用程序,如何返回用户列表并限制结果?
我的 UserDao 看起来像:
public List<User> getUsers(int limit) {
return super.getHibernateTemplate()????
}
最佳答案
我假设您这样做是为了分页。
您可以创建一个查询并使用 setMaxResults 和 setFirstResult:
public List<User> getUsers(int limit)
{
Query q = getHibernateTemplate().getSession().createQuery("from User");
q.setFirstResult(0); // modify this to adjust paging
q.setMaxResults(limit);
return (List<User>) q.list();
}
或者,使用 HibernateCallback(这可能是最好的方法,尽管比较冗长):
return getHibernateTemplate().executeFind(new HibernateCallback() {
public Object doInHibernate(Session session) throws HibernateException, SQLException {
Query q = session.createQuery("from User");
q.setMaxResults(limit);
return q.list();
}
});
它将另外为您处理异常翻译。
关于java - 使用 springs getHibernateTemplate,如何获取用户列表并限制结果集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8130964/