02取派员分页

image.png

封装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;

有关索引的解释

页面post提交的参数

所以,需要我们把参数添加到PageBean中去

Action

然后在创建离线查询对象,
接着,调用service.pageQuery();.......在Impl里面调用dao.pageQuery();

完事以后,我们需要将PageBean对象转为json,通过输出流写回页面中.

现在我们采用这种方式回显,之前我们采用的是gson,或者Redis里面的回显方式.现在我们使用json-lib来讲PageBean对象转为json对象

现在我们来熟悉json-lib的常用参数
JSONObject--将单一对象转为json
JSONArray--将数组或者集合对象转为json

JSON测试类

获得json对象后,我们希望它以输出流的方式回显到页面中.


dabug测试

调出的json对象,我们发现除了total,和rows,往回写有多余的东西.
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容