jfinal自定义标签如何实现分页?
jfinal自定义标签如何实现分页?
package pers.hzy.controller.front.directive; import static freemarker.template.ObjectWrapper.DEFAULT_WRAPPER; import java.io.IOException; import java.util.List; import java.util.Map; import pers.hzy.model.ReCarbty; import freemarker.core.Environment; import freemarker.template.TemplateDirectiveBody; import freemarker.template.TemplateDirectiveModel; import freemarker.template.TemplateException; import freemarker.template.TemplateModel; public class CarbtyListDirective implements TemplateDirectiveModel { @SuppressWarnings("rawtypes") public void execute(Environment env, Map params, TemplateModel[] loopVars, TemplateDirectiveBody body) throws TemplateException, IOException { List<ReCarbty> list = ReCarbty.dao.find("select * from re_carbty where status='P' order by createtime desc, id desc"); env.setVariable("tag_list", DEFAULT_WRAPPER.wrap(list)); body.render(env.getOut()); } }
<@carbty_list> <#list tag_list as c> <tr onMouseOver="this.className='cont_o'" onMouseOut="this.className=''" onclick="javascript:window.location.href='${(base)!''}/content/${(c.id)!''}';"> <td>${(c.id)!''}</td><td>${(c.name)!''}</td><td>${(c.carnum)!''}</td><td>${(c.brief)!''}</td> </tr> </#list> <#include "../page/page_2.html"/>??? <@pagination />??? </@carbty_list>
//分页 <#macro paginate currentPage totalPage totalRow pageSize actionUrl urlParas> <#if (totalPage<=0)||(currentPage>totalPage)> <table cellpadding=0 cellspacing=0 class="page"><tr><td> <span>首页</span> <span>上页</span> <p>1/1</p> <span>下页</span> <span>末页</span> </td></tr></table> <#return> </#if> <table cellpadding=0 cellspacing=0 class="page"><tr><td> <#if (currentPage==1)> <span>首页</span> <#else> <a href="${actionUrl}#1${urlParas!}">首页</a> </#if> <#if (currentPage==1)> <span>上页</span> <#else> <a href="${actionUrl}#{currentPage-1}${urlParas!}">上页</a> </#if> <p>${currentPage}/${totalPage}</p> <#if (currentPage==totalPage)> <span>下页</span> <#else> <a href="${actionUrl}#{currentPage+1}${urlParas!}">下页</a> </#if> <#if (currentPage==totalPage)> <span>尾页</span> <#else> <a href="${actionUrl}#{totalPage}${urlParas!}">尾页</a> </#if> </td></tr></table> </#macro>
??问号处怎么写。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
主要是吧当前的页数计算好 这个把握好分页自己写 没问题的
就是想简化源码,直接调用就行了
就是想用它的这个方法 http://my.oschina.net/yongtree/blog/92309?fromerr=JljB8ry5 这方法展示的是列表,没有分页。
在 jfinal 官网下载 jfinal demo,里面的 webapp 目录下面的 common/_paginate.html已经写好了这个功能,直接用就好。
另外不建议在自定义标签中使用 dao.paginate这样的代码,自定义标签通常只用于实现模板相关功能,对数据进行展示就好。如果有了这些查询数据库的方法不仅不通用,而且耦合度也将提升
调用定义的宏,传对应的参数