封装PageBean
我们期望的是它查询数据库的方式是
select count(*) from bc_staff;
但是现在它查询数据库的方式是
select * from bc_staff;
,显然这不符合要求.所以我们要设置hibernate查询数据的方式:
detachedCriteria.setProjection(Projections.rowCount());
//指定hibernate框架发出sql的形式----》select count(*) from bc_staff;
List<Long> countList = (List<Long>) this.getHibernateTemplate().findByCriteria(detachedCriteria);
对于查询rows,我们期望查询的sql语句是select * from bc_staff limit ?,?;
所以需要重新设置查询条件,因为上面已经规定了,sql的查询方式是聚合查询(返回值是Long类型);
所以现在我们需要把查询条件设为null,回到原始的状态:
detachedCriteria.setProjection(null);
//指定hibernate框架发出sql的形式----》select * from bc_staff;
所以,需要我们把参数
添加到PageBean中去
然后在创建离线查询对象,
接着,调用service.pageQuery();.......在Impl里面调用dao.pageQuery();
完事以后,我们需要将PageBean对象转为json,通过输出流写回页面中.
现在我们来熟悉json-lib的常用参数
JSONObject--将单一对象转为json
JSONArray--将数组或者集合对象转为json
获得json对象后,我们希望它以输出流的方式回显到页面中.
dabug测试