天天看點

struts2中 JFreeChart使用

添加3個包

struts2-jfreechart-plugin-2.3.16.3.jar

jcommon-1.0.16.jar

jfreechart-1.0.13.jar

struts.xml中配置

檢視struts2-jfreechart-plugin-2.3.16.3.jar中的struts-plugin.xml檔案

檢視其中的定義的東西 然後寫着struts.xml中

<package name="freechart" extends="jfreechart-default">
        <action name="freechart" class="cn.itcast.chart.MyFreeChart">

                <result type="chart" name="success" >
                    <param name="height">800</param>
                    <param name="width">600</param>
                </result>
        </action>
    </package>
           
package cn.itcast.chart;

import java.io.Serializable;

import org.jfree.chart.JFreeChart;
import org.jfree.chart.axis.NumberAxis;
import org.jfree.chart.axis.ValueAxis;
import org.jfree.chart.plot.XYPlot;
import org.jfree.chart.renderer.xy.StandardXYItemRenderer;
import org.jfree.data.xy.XYSeries;
import org.jfree.data.xy.XYSeriesCollection;

import com.opensymphony.xwork2.ActionSupport;

public class MyFreeChart extends ActionSupport implements Serializable {
    private JFreeChart chart;

    public JFreeChart getChart() {
        return chart;
    }
    public String execute(){
        ValueAxis xAxis = new NumberAxis("年度");
        ValueAxis yAxis = new NumberAxis("産值");
        XYSeries xySeries = new XYSeries("綠豆");
        xySeries.add(0,300);
        xySeries.add(1,200);
        xySeries.add(2,400);
        xySeries.add(3,500);
        xySeries.add(4,600);
        xySeries.add(5,500);
        xySeries.add(6,800);
        xySeries.add(7,1000);
        xySeries.add(8,1100);
        XYSeriesCollection xyDataset = new XYSeriesCollection(xySeries);
        XYPlot xyPlot = new XYPlot(xyDataset,xAxis,yAxis,new StandardXYItemRenderer(StandardXYItemRenderer.SHAPES_AND_LINES));
        chart = new JFreeChart(xyPlot);
        return SUCCESS;
    }
}

就能傳回圖表
           

繼續閱讀