Struts2 Freemarker Jmesa(表格、分页) 使用的一点心得
来源:百度文库 编辑:神马文学网 时间:2024/10/03 02:41:32
Struts2 Freemarker Jmesa(表格、分页) 使用的一点心得
声明:本文为作者原创,您可以随便使用,但是请注明作者与出处。:) 最近做一个应用的时候用到了Jmesa(至于Jmesa的详细介绍,请Google),但是关于Struts2和Jmesa的资料特别少,费尽周折总算让他们两个正常运行了,现在把使用他们的一些心得写下来与大家分享。 版本: Struts2 : 2.0.11 Spring : 2.5.1 Freemarker : 2.3.12 Jmesa : 2.2.9 Eclipse 3.3 对应Eclipse3.3的插件(没用MyEclipse,我依然活得不错,哈哈~) Tomcat 6.0.* Struts2与Freemarker的配置非常简单——根本不用配置,呵呵,关键点就在:怎么在Struts2环境下使用Jmesa?当然我只用到了 Jmesa提供的Taglib,没用使用到其他高级功能。 (1)、Jmesa实现的Taglib只需要在页面给它一个 List等集合类型的变量就可以正常显示。使用分页功能需要加入下面这段脚本: (2)、使用导出功能,此处以Excel为例。需要加入以下脚本: 还有关键的一点就是:Action要实现ServletRequestAware,ServletResponseAware这两个接口,并且加入以下代码: private HttpServletRequest request;private HttpServletResponse response;
public void setServletRequest(HttpServletRequest request) ......{
this.request = request;
}
public void setServletResponse(HttpServletResponse response) ......{
this.response = response;
} 以上变量定义了实例变量request 和 response,为什么要这样做呢?看一下Jmesa的Tag example就知道了,如下:
TableFacade tableFacade = new TableFacadeImpl(id, request);
tableFacade.setItems(items);
tableFacade.setColumnProperties("password", "nickname");
tableFacade.setExportTypes(response, CSV, EXCEL); // Tell the tableFacade what exports to use.
Limit limit = tableFacade.getLimit();
if (limit.isExported()) ...{
tableFacade.getTable().setCaption("user");
tableFacade.getTable().getRow().getColumn("password").setTitle("password");
tableFacade.getTable().getRow().getColumn("nickname").setTitle("nickname");
tableFacade.render();
return null;
} 最关键的就是这两句了:TableFacade tableFacade = new TableFacadeImpl(id, request);tableFacade.setExportTypes(response, CSV, EXCEL); // Tell the tableFacade what exports to use. 第一句中如果没有request对象的话,不能实例化TableFacade类型的对象。 第二句中如果没有response对象的话,就没有数据。 除此之外还有一点要注意的就是页面中定义的tableFacade的id一定要与Action中的id的值相同,此id起标识导出文件的文件名的作用,也唯一标识一个table。 好了只要注意以上这些Jmesa的这个Taglib就可以使用了。 至于在Freemarker中使用Jmesa的这个Taglib,有以下注意事项: (1)、items的值(即数据集合)直接写变量名就可以 (2)、maxRows属性写为maxRows=8 不用加引号 以上两处注意事项不知道是不是Freemarker版本的问题,呵呵,有待检验。 注:Jmesa的功能非常强大,可以实现复杂的表格 。。。。。。 好东西 思想先进 jock.zh Yeah,it 's jock. 有问题请回帖~~ :)
Struts2 Freemarker Jmesa(表格、分页) 使用的一点心得
基于struts2+spring+hibernate+jquery的jmesa分页实现样例(转)
我的一点心得)
使用eXtremeTable的分页特性
struts2拦截器的使用
FreeMarker在struts2.0,JAVA,web中
学习的一点心得
炒股的一点心得
编舞的一点心得
[原创]HTML表格分页 - 蜗牛的JAVA外壳 - BlogJava
[原创]HTML表格分页 - 蜗牛的JAVA外壳 - BlogJava
表格的使用技巧!!
struts2 标签的使用 s:iterator
struts2 标签的使用 s:iterator
Struts2的使用注解配置Action
FreeMarker在struts2.0,JAVA,web中的应用实例1
FreeMarker在struts2.0,JAVA,web中的应用实例
学习方面的一点心得
打球几年的一点心得
抑制“鼻炎”的一点心得
学习电路的一点心得
阅读季报的一点心得
使用Excel表格的技巧
Excel表格的使用技巧