直接上代码:
// 按条件分页查询投票集合
public List<Subject> getSubjectList(String title, Integer pageNumber,
Integer pageSize) {
if(pageNumber==null){
pageNumber = 1;
}
if(pageSize==null){
pageSize =5;
}
Session session = null;
List<Subject> list = null;
try {
session = HibernateUtil.currentSession();
StringBuffer hql = new StringBuffer("select s.sid,s.title," +
"(select count(*) from Option o where o.subject.sid=s.sid)," +
"(select count(distinct user.uid) from Item i where i.subject.sid=s.sid)" +
"from Subject s where 1=1");
if (title != null) {
hql.append(" and s.title like '%"+title+"%'");
}
hql.append(" order by s.sid desc");
Query query = session.createQuery(hql.toString());
query.setFirstResult((pageNumber-1) * pageSize);
query.setMaxResults(pageSize);
list = query.list();
} catch (Exception e) {
e.printStackTrace();
}
return list;
}
别的不说了。

本文提供了一个基于Hibernate的Java方法实现,该方法用于按条件分页查询投票集合。当请求参数为空时,设置默认的页面大小及当前页数。通过构建SQL查询语句并使用动态SQL来增加查询条件,最后执行分页查询。
419

被折叠的 条评论
为什么被折叠?



