数据分页和高级查询

  • 分页语法格式

    select *from 表名 limt (开始条数,每页几条)

  • 步骤:

  • supportAjaxPage : true,//开启支持分页功能

1.工具gridmanager提供了分页功能,我们去引入currentpagedata(当前页) 和pageSize(每页条数)
前台传过来了,后台就去接收
2把currentpage和pageSize封装到BaseQuery中(提高代码复用率,其他需要分页直接继承即可)
3 如果使用工具类来实现分页,那么就必须给他准备data分页数据,totals每页总条数。
4为了规范这两个参数,我们就把他们两个封装成一个pagalist类
5在service层写findpagelist 方法去查询分页数据(先查询总条数,如果总条数为0直接返回空的一个集合,不为0在进行分页查询。)
6写mapper对应的方法
7写maper映射文件 查询总条数和分页查询。
注意:查询到的分页数据要重新设置类型。controller返回一个pagelist 把查询到的分页数据返回,page与pageSize要与工具类的对应,不然分页效果出不来。

高级查询

1准备表单,通过文章标题和文章类型(查询到所有的文章类型,通过model绑定传到前台。用el表达式遍历)以及启用状态来查询
2方式一:给查询按钮绑定事件,通过过jQuery对象.val取值,
封装成一个json对象传到后台。

		//使用jQuery对象.val取值
		//下拉列表 文本框  文本域   都是用val()来取值
		//获取标题的值
		/*  var title = $("#title").val();
		//获取文章类型id
		var typeId = $("#typeId").val();
		//获取是否启用禁用对应的值
		var enable = $("#enable").val();
		//根据条件查询列表
		var obj =  {'title':title,'typeId':typeId,"enable":enable};
		//gridmanager查询条件要封装成一个json对象
		GridManager.setQuery( 'demo-baseCode',obj);   */

3 方式二:引入jquery.jdikr.js文件,调用其方法,它会自动把form表单中的元素封装成一个json对象,使用工具类gridmanager中的setQuery方法去查询

		//方式二
		//serializeObject  把form表单内部的元素,直接封装成json对象
		var jsonObj = $("#seacherForm").serializeObject();
		//gridmanager的查询(setQuery  gridmanager给大家准备的 )
		GridManager.setQuery('demo-baseCode', jsonObj);

4 将mapper查询总条数添加条件通过条件查询满足的文章,添加查询条件到ArticleQuery中

/**
	 * 查询条件 1.文章标题   2.文章类型 3是否启用
	 */
	/**查询条件*/
	private String title;
	/**文章类型*/
	private Integer typeId;
	/**是否启用*/
	private Integer enable;

5.修改impl和mapper映射文件 然后添加where动态条件 注意提取公共sql

注意:判断字符串的不为空,空字符串。数值型的不为空。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

甜甜掉在星星上

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值