jFreeChart學習筆記(一)——報表demo示例
阿新 • • 發佈:2018-12-12
第一步:
新建一個Dynamic Web Project工程
第二步:
匯入jar包
第三步:web.xml配置
<?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" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> <display-name>jFreeChartDemo</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>default.html</welcome-file> <welcome-file>default.htm</welcome-file> <welcome-file>default.jsp</welcome-file> </welcome-file-list> <servlet> <servlet-name>DisplayChart</servlet-name> <servlet-class>org.jfree.chart.servlet.DisplayChart</servlet-class> </servlet> <servlet-mapping> <servlet-name>DisplayChart</servlet-name> <url-pattern>/DisplayChart</url-pattern> </servlet-mapping> </web-app>
第四步:java類生成指定圖表
package com.java1234.chart.bar; import javax.servlet.http.HttpSession; import org.jfree.chart.ChartFactory; import org.jfree.chart.JFreeChart; import org.jfree.chart.plot.PlotOrientation; import org.jfree.chart.servlet.ServletUtilities; import org.jfree.data.category.DefaultCategoryDataset; public class BarChart1 { public static String getBarChart(HttpSession session)throws Exception { DefaultCategoryDataset dataset = new DefaultCategoryDataset(); dataset.addValue(510, "深圳", "蘋果"); dataset.addValue(320, "深圳", "香蕉"); dataset.addValue(580, "深圳", "橘子"); dataset.addValue(390, "深圳", "梨子"); JFreeChart chart = ChartFactory.createBarChart3D("水果銷售統計圖", "水果", "銷售", dataset, PlotOrientation.VERTICAL, true, true, true); String fileName = ServletUtilities.saveChartAsPNG(chart, 700, 500, null ,session); return fileName; } }
第五步:jsp檔案
<%@page import="com.java1234.chart.bar.BarChart1"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> <% String fileName = BarChart1.getBarChart(session); System.out.println(fileName); %> <img src="DisplayChart?filename=<%=fileName %>" width="700" height="500" border="0"> </body> </html>