📄 sj501action.java
字号:
/*
* 创建日期 2006-5-17
*
* TODO 要更改此生成的文件的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
package com.hbnu.action;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.validator.DynaValidatorForm;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.CategoryPlot;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.chart.renderer.category.BarRenderer3D;
import org.jfree.chart.servlet.ServletUtilities;
import org.jfree.data.category.DefaultCategoryDataset;
import com.hbnu.common.CodingConvert;
/**
* @author wanpeng
*
* TODO 要更改此生成的类型注释的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
public class Sj501Action extends Action{
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws Exception {
DynaValidatorForm SJ501DynaForm = (DynaValidatorForm) form;
Map sj501de1Map = new HashMap();
Map sj501de2Map = new HashMap();
ArrayList scoreList = new ArrayList();
sj501de1Map = (Map) request.getSession().getAttribute("sj501de1Map");
sj501de2Map = (Map) request.getSession().getAttribute("sj501de2Map");
CodingConvert convert = new CodingConvert();
String Analyse = convert.toGb(String.valueOf( request.getSession().getAttribute("Analyse")));
String Advice =convert.toGb(String.valueOf( request.getSession().getAttribute("Advice")));
// sj501de1Map = (Map) request.getSession().getAttribute("sj501de1Map");
//sj501de2Map = (Map) request.getSession().getAttribute("sj501de2Map");
SJ501DynaForm.set("Sj501de1Map",sj501de1Map);
SJ501DynaForm.set("Sj501de2Map",sj501de2Map);
scoreList = (ArrayList)request.getSession().getAttribute("sj501List");
String[] area={"<40","40-49","50-59","60-69","70-79","80-89",">90"};
DefaultCategoryDataset dataset=new DefaultCategoryDataset();//设置数据源
JFreeChart chart1=ChartFactory.createBarChart3D("统计图","分数段","人数", dataset,PlotOrientation.VERTICAL,false,false,false);
int ssize = scoreList.size();
for ( int i = 0; i < ssize; i++ ){
dataset.addValue(Integer.parseInt(String.valueOf((scoreList.get(i)))),"分数段",area[i]);
}
CategoryPlot plot=chart1.getCategoryPlot();
BarRenderer3D renderer1=new BarRenderer3D();
renderer1.setItemLabelsVisible(true);//?示每?柱子上的??
renderer1.setItemMargin(0.1);//?置每?柱子之?的距?
plot.setRenderer(renderer1);//?上面?柱子的?置生效
HttpSession session = request.getSession();
String filename=ServletUtilities.saveChartAsJPEG(chart1,300,200,session); //生成?片,包括?片的大小
String URL=request.getContextPath()+"/servlet/DisplayChart?filename="+filename;
SJ501DynaForm.set("URLString",URL);
SJ501DynaForm.set("Filename",filename);
SJ501DynaForm.set("Analyse",Analyse);
SJ501DynaForm.set("Advice",Advice);
return (mapping.findForward("success"));
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -