hibernate 如何执行sql 查询出总数

来源:互联网 发布:双十一销售额数据 编辑:程序博客网 时间:2024/04/28 00:01

 

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.springframework.orm.hibernate3.HibernateCallback;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

public class GetCountForPage extends HibernateDaoSupport{
public List getCountForPage(final String sql){
  List list = getHibernateTemplate().executeFind(new HibernateCallback() {
    public Object doInHibernate(Session session)
    throws HibernateException, SQLException {
     Connection CurConn   =session.connection();
     PreparedStatement ps = CurConn.prepareStatement(sql);
     ResultSet result=ps.executeQuery();
                 result.next();
                  int sum=result.getInt(1);
                  List list=new ArrayList();
                  list.add(sum);
                  result.close();
                  ps.close();
                  CurConn.close();
              return list;
    }
   });
   return list;
}
}

执行sql :select count(1) from yourtable; 查询出总数可以用来分页

原创粉丝点击