Skip to content

Instantly share code, notes, and snippets.

@Phonbopit
Last active December 18, 2015 17:49
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Phonbopit/5821131 to your computer and use it in GitHub Desktop.
Save Phonbopit/5821131 to your computer and use it in GitHub Desktop.
ใช้งาน JFreeChart บน Servlet @see http://devsharing.com/jfreechart-on-servlet-example/
private JFreeChart createPieChart() {
DefaultPieDataset dataset = new DefaultPieDataset();
dataset.setValue("ส้มตำ", 34);
dataset.setValue("กระเพาะไก่", 87);
dataset.setValue("น้ำตกหมู", 72);
dataset.setValue("ข้าวต้มปลา", 52);
dataset.setValue("กุ้งเผา", 61);
JFreeChart chart = ChartFactory.createPieChart("อาหารที่ชื่นชอบ", dataset,
true, true, false);
return chart;
}
OutputStream out = response.getOutputStream();
JFreeChart pieChart = createPieChart();
response.setContentType("image/png");
ChartUtilities.writeChartAsPNG(out, pieChart, 640, 480);
out.close();
package com.devsharing.jfreechart;
import java.io.IOException;
import java.io.OutputStream;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
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;
@WebServlet(description = "Chart Demo", urlPatterns = { "/chartDemo" })
public class DevChart extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
OutputStream out = response.getOutputStream();
JFreeChart pieChart = createPieChart();
response.setContentType("image/png");
ChartUtilities.writeChartAsPNG(out, pieChart, 640, 480);
out.close();
}
private JFreeChart createPieChart() {
DefaultPieDataset dataset = new DefaultPieDataset();
dataset.setValue("ส้มตำ", 34);
dataset.setValue("กระเพาะไก่", 87);
dataset.setValue("น้ำตกหมู", 72);
dataset.setValue("ข้าวต้มปลา", 52);
dataset.setValue("กุ้งเผา", 61);
JFreeChart chart = ChartFactory.createPieChart("อาหารที่ชื่นชอบ",
dataset, true, true, false);
return chart;
}
}
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.devsharing.jfreechart</groupId>
<artifactId>DevChart</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>DevChart Maven Webapp</name>
<url>http://maven.apache.org</url>
<properties>
<servlet-api-version>2.5</servlet-api-version>
<jfreechart-version>1.0.13</jfreechart-version>
<jcommon-version>1.0.16</jcommon-version>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<!-- Servlet API -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>${servlet-api-version}</version>
</dependency>
<!-- JFreeChart -->
<dependency>
<groupId>jfree</groupId>
<artifactId>jfreechart</artifactId>
<version>${jfreechart-version}</version>
</dependency>
<!-- JCommon -->
<dependency>
<groupId>jfree</groupId>
<artifactId>jcommon</artifactId>
<version>${jcommon-version}</version>
</dependency>
</dependencies>
<build>
<finalName>DevChart</finalName>
</build>
</project>
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
id="WebApp_ID" version="3.0">
<display-name>DevChart</display-name>
</web-app>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment