新学习Groovy开发。应该说说他与Grails的关系就像j2se和j2ee的关系。groovy是开发Grails的基础语法吧。我这里直接跳过Groovy这个语法学习。在Grails里面的Controller层里面的
params相当与servlet里面的request对象。
params.offset=params.offset?params.int('offset'):0
是一个三目运算,params.offset表示分页时的起始页。如果存在就用这个变量,如果不存在就使用0。
parms << Integer.parseInt (params.type)表示将参数type的值放在parms中。
def result = AAA.executeQuery(hql, parms, [max:params.max, offset:params.offset]),熟悉hibernate的人应该知道这个查询,并且使用的分页
render(view:"list",model:[TPageList: result, TPageTotal: countTotal, obj: params])表示指定跳到那个视图,能够在该视图使用的模块
有人应该用过grails的分页控件,但是这个控件不支持查询分页,也就事查询后的结果想要分页但是不支持(可以看看下一页的链接就明白了)这个有个简单的方法可以让你支持这个查询分页:
这样就可以了。其中filterParams是指使用filterpane 插件分页
def list = {
params.max = 50
params.offset = params.offset ? params.int('offset') : 0
//代码省略
parms << Integer.parseInt (params.city)
//代码省略
def result = AAA.executeQuery(hql, parms, [max:params.max, offset:params.offset])
render(view:"list",model:[TPageList: result, TPageTotal: countTotal, obj: params])
}
params相当与servlet里面的request对象。
params.offset=params.offset?params.int('offset'):0
是一个三目运算,params.offset表示分页时的起始页。如果存在就用这个变量,如果不存在就使用0。
parms << Integer.parseInt (params.type)表示将参数type的值放在parms中。
def result = AAA.executeQuery(hql, parms, [max:params.max, offset:params.offset]),熟悉hibernate的人应该知道这个查询,并且使用的分页
render(view:"list",model:[TPageList: result, TPageTotal: countTotal, obj: params])表示指定跳到那个视图,能够在该视图使用的模块
有人应该用过grails的分页控件,但是这个控件不支持查询分页,也就事查询后的结果想要分页但是不支持(可以看看下一页的链接就明白了)这个有个简单的方法可以让你支持这个查询分页:
<g:paginate total="${TPageContentInstanceTotal}" params="${filterParams?filterParams:params }"/>
这样就可以了。其中filterParams是指使用filterpane 插件分页