grails实现分页查询
2016-10-19 10:27
218 查看
在datasource中加入:logsql=ture 可以看到 Hibernate的生成的SQL语句
在Goodscontroller中 写入
同时也要修改显示分页导航:
让paginate生成的导航链能够继续按照当前的查询条件进行查询,需要设置g:paginate的params属性的值
在controller中还要修改:index()
在Goodscontroller中 写入
def search(){ if(!params.max ) params.max=2 if(!params.offset) params.offset=0 def serachClosure = { if (params.categoryName){ category { eq('categoryName', params.categoryName) } } if (params.title){ like('title',"%${params.title}%") } if (params.description){ like('description',"%${params.description}%") } if (params.priceLow){ ge('price',new BigDecimal(params.priceLow)) } if (params.priceHigh){ le('price',new BigDecimal(params.priceHigh)) } } def c = Goods.createCriteria() params.sort="price" params.order="asc" def goodList=c.list(params,serachClosure) def goodsCount=goodList.totalCount println "$goodsCount" render(view:'index',model:[goodsInstanceList:goodList,goodsInstanceCount: goodsCount] ) }
同时也要修改显示分页导航:
让paginate生成的导航链能够继续按照当前的查询条件进行查询,需要设置g:paginate的params属性的值
<div class="pagination"> %{--<g:paginate total="${goodsInstanceCount ?: 0}" />--}% <g:paginate total="${goodsInstanceList.totalCount}" params="${params}" /> </div>
在controller中还要修改:index()
def index(Integer max) { /*params.max = Math.min(max ?: 10, 100)*/ if (!params.max) params.max=3 respond Goods.list(params), model:[goodsInstanceCount: Goods.count()] }
相关文章推荐
- grails笔记-----实现动态查询并且分页
- grails的criteria实现复合查询并实现结果分页
- SQL 在查询中插入行号--自定义分页的另外一种实现方式
- 实现Hibernate分页查询原理解读
- 实现Hibernate分页查询原理解读
- 实现Hibernate分页查询原理解读
- 利用JQuery方便实现基于Ajax的数据查询、排序和分页功能
- Hibernate 实现分页查询 [转]
- 实现Hibernate分页查询原理解读
- 数据查询分页的几种实现方式
- 实现Hibernate分页查询原理解读
- 利用标准的SQL语句实现查询记录分页
- 用标准的SQL语句实现查询记录分页
- 海量数据库的查询优化及分页算法方案(二)-实现小数据量和海量数据的通用分页显示存储过程 [转]
- 应用Hibernate3的DetachedCriteria实现分页查询 (来自JAVA视线)
- 在SQL Server中通过SQL语句实现分页查询
- 用标准的SQL语句实现查询记录分页
- 应用Hibernate3的DetachedCriteria实现分页查询
- SQL 在查询中插入行号--自定义分页的另外一种实现方式
- 利用JQuery方便实现基于Ajax的数据查询、排序和分页功能