相关疑难解决方法(0)

在执行选择和计数查询时,是否有更有效的方式在Hibernate中进行分页?

通常分页查询看起来像这样.有没有更好的方法,而不是两个几乎相同的方法,其中一个执行"select*..."而另一个"count*..."?

public List<Cat> findCats(String name, int offset, int limit) {

    Query q = session.createQuery("from Cat where name=:name");

    q.setString("name", name);

    if (offset > 0) {
        q.setFirstResult(offset);
    }
    if (limit > 0) {
        q.setMaxResults(limit);
    }

    return q.list();

}

public Long countCats(String name) {
    Query q = session.createQuery("select count(*) from Cat where name=:name");
    q.setString("name", name);
    return (Long) q.uniqueResult();
}
Run Code Online (Sandbox Code Playgroud)

java mysql pagination hibernate hql

37
推荐指数
3
解决办法
3万
查看次数

标签 统计

hibernate ×1

hql ×1

java ×1

mysql ×1

pagination ×1