数据库的内容
CATEGORY | VALUE
---------+------
London | 54.3
New York | 43.4
Paris | 17.9
import java.io.IOException;
import java.io.OutputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartUtilities;
import org.jfree.chart.JFreeChart;
import org.jfree.data.general.DefaultPieDataset;
import org.jfree.data.general.PieDataset;
import org.jfree.data.jdbc.JDBCPieDataset;
public class PieServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
try {
//获得输出流
OutputStream os = response.getOutputStream();
//获得相于的数据对象
DefaultPieDataset dataset = (DefaultPieDataset) this.readData();
JFreeChart chart = ChartFactory.createPieChart("Test", dataset, true, true, false);
response.setContentType("image/png");
//写到输出流,并在页面上面显示
ChartUtilities.writeChartAsPNG(os, chart, 800, 600);
os.close();
} catch (RuntimeException e) {
e.printStackTrace();
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doGet(request, response);
}
/**
* 连结JDBC,并创建JDBCPieDataset对象返回
* @return
*/
private PieDataset readData() {
//创建JDBCPieDataset对象
JDBCPieDataset data = null;
String url = "jdbc:mysql://127.0.0.1:3306/jfreechartdb";
Connection con = null;
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
System.err.print("ClassNotFoundException: ");
}
try {
con = DriverManager.getConnection(url, "root", "root");
//把JDBCPieDataset对象和Connection关联
data = new JDBCPieDataset(con);
String sql = "select * from piedata;";
//获得数据
data.executeQuery(sql);
con.close();
} catch (SQLException e) {
System.err.print("SQLException: ");
} catch (Exception e) {
System.err.print("Exception: ");
}
return data;
}
}
同时还有其它对象JDBCCategoryDataset,JDBCXYDataset,对应的是条状和,坐标,用于封装相应的数据
分享到:
相关推荐
在本篇“JFreeChart学习笔记3-简单Line图形创建”中,我们将深入探讨如何使用JFreeChart库在Java环境中创建基本的线性图表。JFreeChart是一个强大的、开源的Java图表库,它允许开发者轻松地生成各种类型的图表,包括...
**JFreeChart学习笔记1 - 简单Pie图创建** 在Java开发中,我们经常需要展示数据,而饼图(Pie Chart)是一种常见的数据可视化工具,尤其适用于展示各项比例关系。JFreeChart是一个强大的开源Java图表库,它提供了...
3. 创建JFreeChart对象:使用`JFreeChart.createCategoryChart()`静态方法,指定图表标题、类别轴标签、值轴标签和Dataset。 4. 设置图表组件:你可以定制图表的外观,例如,添加图例、更改背景色等。 5. 创建...
"jfreechart1.0.3-demo-src" 是 JFreeChart 1.0.3 版本的演示源码,是理解并学习这个库的重要资源。 首先,"demo" 文件夹包含了 JFreeChart 的各种示例代码,这些代码展示了如何利用 JFreeChart 实现各种复杂的图表...
这个压缩包“jfreechart-1.0.13”包含了JFreeChart的完整版本,让我们一起深入探讨其核心功能和使用方法。 JFreeChart是Java中最优秀的绘图工具之一,它支持多种图表类型,包括折线图、柱状图、饼图、散点图、甘特...
1. **jfreechart-1.0.19-install.pdf**:这可能是安装或使用指南,详细介绍了如何将JFreeChart库集成到你的Java项目中,包括依赖管理和配置步骤,可能还包括示例代码和最佳实践。 2. **jfreechart-1.0.19-fx-...
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-1.0.19-Demo-Source` 中的关键知识点。 1. **项目结构** - **jFreeChartDemo**: 这是 JFreeChart 的演示程序,包含了各种类型的图表示例,这些示例展示了如何创建和定制图表,是学习 ...
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压缩包中有一个jfreechart-1.0.19-demo.jar,里面演示了各种图表的制作案例,包括BarChart、LineChart、PieChart、TimeSeriesChart、XYSeries等等,共309个例子,现开放源码,请各位下载,欢迎交流...
这个“jfreechart-1.0.19-demo.src”压缩包包含了JFreeChart库1.0.19版本的示例源代码,对于理解JFreeChart的使用方法和内部机制非常有帮助。 源码分析: 1. **类结构与设计模式**:JFreeChart的设计遵循了模块化...
"jfreechart-1.0.6-demo"源码是JFreeChart的一个示例集合,它展示了如何创建并定制各种类型的图表,是学习和理解JFreeChart功能的最佳起点。通过分析这些示例代码,开发者可以快速掌握JFreeChart的API用法和设计...
- **引入库**:将 JFreeChart-1.5.0.jar 添加到项目类路径中。 - **创建 ChartFactory**:根据所需的图表类型,调用相应的静态方法创建图表对象,如 `JFreeChart chart = ChartFactory.createLineChart()`。 - **...
3. 创建饼图:使用`JFreeChart`类的`createPieChart(String title, PieDataset dataset)`方法创建饼图实例。 ```java JFreeChart chart = ChartFactory.createPieChart( "饼图示例", // 图表标题 dataset // 数据...
`jfreechart-1.0.5-demo-all` 包含了 JFreeChart 库的 1.0.5 版本的演示代码和可执行的 JAR 文件,这对于学习和理解如何在实际项目中应用 JFreeChart 非常有帮助。 1. **JFreeChart 概述** - JFreeChart 是一个...
jfreechart(包jfreechart(包含jfreechart.jar和jcommon-1.0.13.jar) jfreechart(包含jfreechart.jar和jcommon-1.0.13.jar) jfreechart(包含jfreechart.jar和jcommon-1.0.13.jar) jfreechart(包含jfreechart.jar和...
项目中要用到JFreeChart做图,但是DEMO源码要收费的,而且在CSDN上下载都是反编译DEMO出来的,到处都是异常就拿出来骗分,我自己花了1个小时间把所有异常都改掉了,并且测试无错。 这个包是我直接把我Eclipse项目...
根据提供的文档信息,我们可以深入探讨JFreeChart的相关知识点,包括其功能、安装步骤以及使用方法等。 ### JFreeChart概述 #### 1.1 什么是JFreeChart? JFreeChart是一款为Java平台设计的免费图表库。它适用于...