异常信息:java.lang.NoSuchMethodError: org.hibernate.hql.antlr.HqlBaseParser.recover(Lantlr/RecognitionException;Lantlr/collections/impl/BitSet;)V
//获得总记录数
int count = articleService.getResult("from Article where users.id=?", new Object[]{loginUser.getId()}).size();
int maxPage = count / NUMBER;
if(count%NUMBER != 0){
maxPage ++;
}
//获得列表
List list = articleService.getResult("from Article where users.id=? order by indate limit ? offset ?", new Object[]{loginUser.getId(),NUMBER,(page-1)*NUMBER});
if(count != 0 && list == null){
list = articleService.getResult("from Article where users.id=? order by indate limit ? offset ?", new Object[]{loginUser.getId(),NUMBER,0});
}
if(list != null){
PageData data = new PageData(list,page,maxPage);
request.setAttribute("article", data);
}
getResult方法定义如下:
public List getResult(String hql, Object[] parameters) {
// TODO Auto-generated method stub
Query query = sessionFactory.getCurrentSession().createQuery(hql);
//注入?
if(parameters != null && parameters.length > 0){
for(int i = 0;i < parameters.length;i ++){
query.setParameter(i, parameters[i]);
}
}
return query.list();
}