需要的包:
struts2-jfreechart-plugin-2.2.1.1.jar
jfreechart-1.0.13.jar
jcommon-1.0.17.jar
前台jsp页面中可以使用iframe显示图表,代码
<iframe id="frm1" name="frm1" src="/lzmgzyx/jfreechart.action" style="100%;height:700px"></iframe>
在struts.xml中配置,注意继承jfreechart-default,result的类型为chart
<package name="/lzmgzyx" extends="struts-default,jfreechart-default" namespace="/lzmgzyx"> <action name="jfreechart" class="com.demo.jfreechart.JfreechartAction"> <result name="success" type="chart"> <param name="height">650</param> <param name="width">1300</param> </result> </action> </package>
action中要有chart全局变量,提供get、set方法
private JFreeChart chart;
前台提交请求后,aciton中的方法生成chart对象返回到前台就显示图表了。
action中方法例子
public String execute() { DefaultCategoryDataset dataset = new DefaultCategoryDataset(); dataset.addValue(15, "第一个比较项", "第一项"); dataset.addValue(25, "第一个比较项", "第二项"); chart = ChartFactory.createBarChart3D("标题", "横轴", "纵轴", dataset,PlotOrientation.VERTICAL, true, true, true); configFont(chart); return SUCCESS; }
生成的图表