/**
*
*<p>Title: geCustomeCurrentFee</p>
*<p>Description:TODO 得到当前话费</p>
* @param @param mobileTeleNo
* @param @return 设定文件
* @return String 返回类型
* @throws
*/
public String getCustomeCurrentFee(){
String mobileTeleNo=HttpUtil.getParameter("mobileTeleNo");
HttpServletResponse response= ServletActionContext.getResponse();
HttpServletRequest request = ServletActionContext.getRequest();
HttpSession session = request.getSession();
response.setContentType("text/html; charset=GBK");
response.setHeader("Pragma", "No-cache");
response.setHeader("Cache-Control", "no-cache");
response.setDateHeader("Expires", 0);
try{
if(LoginUtil.getUserInfo()==null){
logger.debug("Session已失效!");
PrintWriter writer= response.getWriter();
writer.print("Session已失效,请重新登陆!");
response.flushBuffer();
return null;
}
try{
session.removeAttribute("JFreeChart_Deleter");
JFreeChart chart = createChart(mobileTeleNo);
String filename = ServletUtilities.saveChartAsPNG(chart, 215, 200, null, session);//宽度,长度
String graphURL = graphURL = request.getContextPath()+ "/servlet/DisplayChart?filename=" + filename;
PrintWriter writer= response.getWriter();
writer.print(graphURL);
response.flushBuffer();
} catch (IOException e1) {
logger.error(e1.getMessage());
return "";
}
}catch(Exception e){
try {
PrintWriter writer= response.getWriter();
writer.print("保存数据失败!");
response.flushBuffer();
return null;
} catch (IOException e1) {
logger.error(e.getMessage());
return "";
}
}
return null;
}
private JFreeChart createChart(String mobileTeleNo) throws Exception{
JFreeChart chart = null;
PieDataset data = this.createDataset(mobileTeleNo);
if(data != null){
PiePlot plot = new PiePlot(data);
plot.setDataset(data);
//整个标签包括连接线都不显示
plot.setLabelGenerator(null);
//没有数据时显示的消息
plot.setNoDataMessage("无法获取到该业务号码的话费信息");
//图例显示百分比:{0}表示选项,{1}表示数值,{2}表示所占比例
plot.setLegendLabelGenerator(new StandardPieSectionLabelGenerator("{0}:{1}元({2})"));
//设置是否忽略null值
plot.setIgnoreNullValues(true);
//设置是否忽略0值
plot.setIgnoreZeroValues(false);
chart = new JFreeChart("", JFreeChart.DEFAULT_TITLE_FONT, plot, true);
//可选,设置图片背景色
chart.setBackgroundPaint(Color.WHITE);
//RenderingHints做文字渲染参数的修改,VALUE_TEXT_ANTIALIAS_OFF表示将文字的抗锯齿关闭.
chart.getRenderingHints().put(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_OFF);
chart.setBackgroundPaint(new Color(248,252,253));
//设置图例说明Legend上的文字字体
chart.getLegend().setItemFont(new Font("宋体", Font.PLAIN, 12));
//设置图例说明Legend上的文字颜色
chart.getLegend().setItemPaint(new Color(43,74,120));
//设置图例说明Legend的边框
chart.getLegend().setBorder(0, 0, 0, 0);
chart.getLegend().setBackgroundPaint(new Color(248,252,253));
//设置饼图的边框颜色
chart.getPlot().setOutlinePaint(Color.WHITE);
chart.getPlot().setBackgroundPaint(new Color(248,252,253));
}
return chart;
}
private PieDataset createDataset(String mobileTeleNo) throws Exception {
DefaultPieDataset data = new DefaultPieDataset();
data.setValue("月租费", 13);
data.setValue("市话费", 3.36);
data.setValue("短信费", 25.6);
data.setValue("漫游费", 38);
data.setValue("国内长途", 26.45);
data.setValue("国际长途", 10);
return data;
}
分享到:
相关推荐
flex jfreechart生成 饼状图 flex jfreechart生成 柱状图 flex jfreechart生成 曲线图 flex jfreechart生成 曲线图
3D和平面饼状图!有详细的注释!
JFreeChart入门_-_使用JFreeChart开发Pie(饼状图)
JFreeChart 饼状图 柱状图 柱状图 堆积柱状图 折线图 这个是我特地开发的一个用JFreeChart开发的用来画图的项目,已经开发成形了各种项目的各种需求的项目,并且自己可以拓展,根据需求修改代码,完成项目的需要。 ...
jfreechart饼状图
freechart1.0.3-demo-src
JFreeChart中文api (JFreeChart-1.0.5-Ch.chm) JFreeChart中文api (JFreeChart-1.0.5-Ch.chm)
struts2-jfreechart-plugin-2.1.8.1.jar
JFreeChart生成3D饼状图及柱状图,可把图片生成在指定文件目录下
jFreeChart展示web图表---五分钟上手
jfreechart-0.9.21的jar包和jfreechart-0.9.21-demo
struts2-jfreechart-plugin-2.0.11.jarstruts2-jfreechart-plugin-2.0.11.jarstruts2-jfreechart-plugin-2.0.11.jar
jfreechart-1.0.19-Demo-Source 源代码,亲自整理测试,绝对可用
jfreechart-1.0.19压缩包中有一个jfreechart-1.0.19-demo.jar,里面演示了各种图表的制作案例,包括BarChart、LineChart、PieChart、TimeSeriesChart、XYSeries等等,共309个例子,现开放源码,请各位下载,欢迎交流...
jfreechart-1.0.19-demo.src 示例中源码
java的JFreeChart编写柱状图和饼状图及3D饼状图方法
项目中要用到JFreeChart做图,但是DEMO源码要收费的,而且在CSDN上下载都是反编译DEMO出来的,到处都是异常就拿出来骗分,我自己花了1个小时间把所有异常都改掉了,并且测试无错。 这个包是我直接把我Eclipse项目...
Java 最优秀的画图工具,包括Jar文件和各种例子文件!共享!多支持!
虽然现在JS做报表和图形展示已经非常普遍和漂亮了,但是不能忽略有jfreechart 这样一种东西! 这些翻阅资料,在看以前写的示例时发现了关于jfreechart 的简单示例,不管怎样发上来分享一下!
JFreeChart可生成饼图(pie charts)、柱状图(bar charts)、散点图(scatter plots)、时序图(time series)、甘特图(Gantt charts)等等多种图表,并且可以产生PNG和JPEG格式的输出,还可以与PDF和EXCEL关联。