1.action

@Controller(value = "pieAction")
@Scope("prototype")
public class PieAction extends ActionSupport {
@Autowired
private PieService pieService;
// 图表
private JFreeChart jFreeChart; @Override
public String execute() throws Exception {
// 1准备数据集
DefaultPieDataset pieDate = new DefaultPieDataset();
// 2查询数据
List<Pie> list = pieService.find();
// 3循环放入数据集
for (Pie pie : list) {
pieDate.setValue(pie.getName(), pie.getNum());
}
// 设置主题及编码(省略主题设置)
StandardChartTheme sct = new StandardChartTheme("CN");
ChartFactory.setChartTheme(sct);
// 生成char
this.jFreeChart = ChartFactory.createPieChart3D("标题-测试", pieDate); // 乱码解决
TextTitle textTitle = jFreeChart.getTitle();
textTitle.setFont(new Font("微软雅黑", Font.BOLD, 12));
PiePlot plot = (PiePlot) jFreeChart.getPlot();
// 设置饼状图体里的的各个标签字体
plot.setLabelFont(new Font("微软雅黑", Font.BOLD, 12));
// 设置图表下方的图例说明字体
jFreeChart.getLegend().setItemFont(new Font("微软雅黑", Font.BOLD, 12)); // 获取到要保存的路径
String realPath = ServletActionContext.getRequest().getRealPath("img");
// 保存图片到路径
FileOutputStream fos = new FileOutputStream(realPath + "/test.jpg");
ChartUtilities.writeChartAsJPEG(fos, 1, jFreeChart, 400, 300, null);
fos.close();
return SUCCESS;
} public PieService getPieService() {
return pieService;
} public void setPieService(PieService pieService) {
this.pieService = pieService;
} public JFreeChart getjFreeChart() {
return jFreeChart;
} public void setjFreeChart(JFreeChart jFreeChart) {
this.jFreeChart = jFreeChart;
} }

2.jsp页面

<body>
<img alt="图表" src="${pageContext.request.contextPath}/img/test.jpg">
</body>

Jfreechart初案例--饼图的更多相关文章

  1. JFreeChart 使用一 饼图之高级特性

    原文链接:http://www.cnblogs.com/jtmjx/archive/2013/04/23/jfreechart_advantage.html 本文主要讲解JFreeChart中饼图的一 ...

  2. JFreeChart 之饼图

    JFreeChart 之饼图 一.JFreeChart 简介 JFreeChart是JAVA平台上的一个开放的图表绘制类库.它完全使用JAVA语言编写,是为applications, applets, ...

  3. 使用JFreeChart生成报表

    1.JFreeChart简介    JFreeChart是JAVA平台上的一个开放的图表绘制类库.它完全使用JAVA语言编写,是为applications,servlets以及JSP等使用所设计.  ...

  4. Java报表之JFreeChart

    一.JFreeChart简介 JFreeChart是JAVA平台上的一个开放的图表绘制类库.它完全使用JAVA语言编写,是为applications,servlets以及JSP等使用所设计. JFre ...

  5. JfreeChart使用(转载)

    http://www.cnblogs.com/xingyun/ http://www.huosen.net/archives/156.html(此篇除了struts2外,还介绍了servlet下Jfr ...

  6. Spark之路 --- Scala用JFreeChart画图表实例

    JFreeChart介绍 JFreeChart是JAVA平台上的一个开放的图表绘制类库.它完全使用JAVA语言编写,是为applications, applets, servlets 以及JSP等使用 ...

  7. JFreeChart入学教程

    JFreeChart入学教程 2011-08-08 14:55:19|  分类: 技术篇 |举报 |字号 订阅   JFreeChart 是一组功能强大.灵活易用的Java绘图API,使用它可以生成多 ...

  8. JFreeChart 之柱状图

    JFreeChart 之柱状图 一.JFreeChart 简介 JFreeChart是JAVA平台上的一个开放的图表绘制类库.它完全使用JAVA语言编写,是为applications, applets ...

  9. JFreeChart 之折线图

    JFreeChart 之折线图 一.JFreeChart 简介 JFreeChart是JAVA平台上的一个开放的图表绘制类库.它完全使用JAVA语言编写,是为applications, applets ...

随机推荐

  1. 查找树ADT

    通过二叉查找树实现排序的例程 /** * 无论排序的对象是什么,都要实现Comparable接口 * * @param <T> */ public class BinaryNode< ...

  2. Java发送socket请求的工具

    package com.tech.jin.util; import java.io.ByteArrayOutputStream; import java.io.IOException; import ...

  3. 在AngularJS中同一个页面配置一个或者多个ng-app

    在AngularJS学习中,对于ng-app初始化一个AngularJS程序属性的使用需要注意,在一个页面中AngularJS自动加载第一个ng-app,其他ng-app会忽略, 如果需要加载其他ng ...

  4. table表格,让thead固定,tbody有滚动条,关键是都对齐的纯css写法。

    找了好久才找到一篇可以简单粗暴就能用的,所以拿过来算是收藏了.里面有一个css2里的命令是我没用过的也是这里面关键的:table-layout:fixed; 原理很简单,有爱研究的童鞋可以去css官网 ...

  5. 微信小程序-设备

    网络状态: wx.getNetworkType(OBJECT) 获取网络类型. OBJECT参数说明: wx.getNetworkType({ success: function(res) { var ...

  6. 微信小程序-表单

    wxml <view> 按钮: <button size="{{buttom.size}}" type="{{buttom.type}}" p ...

  7. SQL-Server使用点滴(一)

    前言 SQL的语法比较简单,学起来相比界面UI控制要简单得多,但是SQL在企业级应用中又是如此的重要,以至于很多开发人员都把重点放在SQL上. SQL并没有面向对象的概念,最复杂的设计也不过是表值函数 ...

  8. Arduino 极速入门系列 - 光控灯(1)- 关于理论和 LED 那些事

    点个 LED 闪亮好像太单调,这次来个光控 LED 灯.这个其实不需要 Arduino 也能做,这次只是用来演示一下 PWM 在 Arduino 里面的做法.PWM 原理后面会解释.这次用充电宝提供 ...

  9. 新手用git

    最近几天用到了git,作为只看过教程,没有在实际项目中使用过的人来说,简直是 T_T ...... 在这里记录一下,以防以后忘记. clone : 本地没有该库,从远程repository拷贝到本地 ...

  10. CSS3盒子阴影box-shadow

    来自W3CSchool的解释 语法: box-shadow: h-shadow v-shadow blur spread color inset; 注释:box-shadow 向框添加一个或多个阴影. ...