struts2是一个javaee应用的web层解决方案,将底层数据以各种形式显示出来也是其主要任务。strtus2结合jfreechart后,可以直接以jfreechart图表作为表现层组件,直接使用jfreechart图表来显示action的处理结果;jfreechart插件的主要作用就是在页面中显示Action中的JFreeChart对象,也就是我们只需在Action中提供需要显示的数据,因为Struts2对JFreeChart进行了封装,它会自动生成JFreeChart图表,并将其显示在JSP页面上。
在使用时,如果你的struts2版本不是特别高时,可能需要注意以下几个问题,
1.struts2整合jfreechart需要用到struts2-jfreechart-plugin-2.3.8.jar,其版本是2.3.8
2.如果struts2、xwork的核心包版本与之不一样,在运行时将会报错,所以请保持版本一致
3.与此同时,请把commons-lang包也更新为最新的,我目前用的是commons-lang3-3.1
4.请在web.xml中为struts2配置的filter由以前的org.apache.struts2.dispatcher.FilterDispatcher更换为
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter,如果不更换,并不会导致错误;
运行后,结果同样正常显示,但此时,在控制台给出现一堆警告,其意思是:FilterDispatcher已过时,需要更换
5.xwok以前版本的jar包名并没有core,现在的包名都用core代替了以前的,不知从什么版本开始的!
使用步骤:
1.如果需要Action中的统计图数据能够被Struts2处理,那么该JFreeChart类型的属性名为chart(固定属性,不可更换)
eg:
private JFreeChart chart;
public JFreeChart getChart(){}
2.配置Action,需要为该Action定义一个类型为chart的result,该reslut将使用JFreeChart统计图表来作为视图组件
配置chart的result时,可以指定两个参数,width和height,分别代表统计图的宽度和高度
3.在struts.xml中package,extends配置的由以前的struts-default更改成jfreechart-default。否则在启动时控制台会抛下异常:
Error building results for action jfreeChart in namespace - action - file:.......
因为在struts-default中并没有定义名称为chart的result,而是在jfreechart-default当中定义的
通过观察struts-plugin.xml,会发现它是extends自struts-default,并且定义了名为chart的result
在使用时,如果你的struts2版本不是特别高时,可能需要注意以下几个问题,
1.struts2整合jfreechart需要用到struts2-jfreechart-plugin-2.3.8.jar,其版本是2.3.8
2.如果struts2、xwork的核心包版本与之不一样,在运行时将会报错,所以请保持版本一致
3.与此同时,请把commons-lang包也更新为最新的,我目前用的是commons-lang3-3.1
4.请在web.xml中为struts2配置的filter由以前的org.apache.struts2.dispatcher.FilterDispatcher更换为
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter,如果不更换,并不会导致错误;
运行后,结果同样正常显示,但此时,在控制台给出现一堆警告,其意思是:FilterDispatcher已过时,需要更换
5.xwok以前版本的jar包名并没有core,现在的包名都用core代替了以前的,不知从什么版本开始的!
使用步骤:
1.如果需要Action中的统计图数据能够被Struts2处理,那么该JFreeChart类型的属性名为chart(固定属性,不可更换)
eg:
private JFreeChart chart;
public JFreeChart getChart(){}
2.配置Action,需要为该Action定义一个类型为chart的result,该reslut将使用JFreeChart统计图表来作为视图组件
配置chart的result时,可以指定两个参数,width和height,分别代表统计图的宽度和高度
3.在struts.xml中package,extends配置的由以前的struts-default更改成jfreechart-default。否则在启动时控制台会抛下异常:
Error building results for action jfreeChart in namespace - action - file:.......
因为在struts-default中并没有定义名称为chart的result,而是在jfreechart-default当中定义的
通过观察struts-plugin.xml,会发现它是extends自struts-default,并且定义了名为chart的result
同时还配置了二个参数,width和height,分别代表统计图的宽度和高度
4:使用JFreeChart后的Action需要extends自Action类和ActionSupport类,提供一个getChart的方法既可,不用重写execute()或其它方法。
关于JFreeChart和Struts2的jar包,可以去官网下载!也可以在我资源里下载:http://download.youkuaiyun.com/detail/liutianxiong888/6271591