JFreeChart在Webwork中的應用(1 / 3)

JFreeChart在Webwork中的應用

前言:

Webwork是當今流行的J2EE幾大架構之一,在實際的項目中,我們往往要在Webwork的輸出流中調用一個圖表chart,代替直接用response.out輸出。那麼我們應該怎麼樣去實現呢?本文將詳細闡述JFreeChart在Webwork中的應用。本文調試環境為windows2000+tomcat5.0。共分三個部分:

1,JFreeChart 簡介

2,Webwork簡介及Webwork,JFreeChart應用環境的配置

3,JFreeChart在Webwork中的應用的具體例子

JFreeChart 簡介:

JFreeChart是開放源代碼項目,它主要用來各種各樣的圖表,這些圖表包括:餅圖、柱狀圖(普通柱狀圖以及堆棧柱狀圖)、線圖、區域圖、分布圖、混合圖、甘特圖以及一些儀表盤等等。

JFreeChart創建WEB圖表的基本知識

JFreeChart主要是由三個類構成:

org.jfree.chart.servlet.ChartDeleter

org.jfree.chart.servlet.DisplayChart

org.jfree.chart.servlet.ServletUtilities

在下麵做一下簡單的介紹:

ChartDeleter 繼承自HttpSessionBindingListener,用於實現當Session 關閉時,刪除臨時目中的圖象文件。

ServletUtilities有一係列方法;

saveChartAs*;saveChartAs*是把圖表按照不同的形式存儲為圖象;

sendTempFile方法被重載了很多次,用於把文件流發送response;

DisplayChart繼承自Httpservlet 用於處理顯示圖象;

Webwork簡介及Webwork,JFreeChart應用環境的配置

Webwork是一個源代碼開放的Web應用框架,用於簡化基於Web的應用開發。

Webwork的最大優點是它的簡單性和靈活性。Webwork有一個很小的API,它使開發者可以迅速進行開發工作。

Webwork是許多特性和適用性的組合,包括使用variour view技術,例如JavaServer Pages(JSP),Velocity,Extensible Stylesheet Language Transformations

Specification(XSLT)和JasperReporters。還有,Webwork對JFreechart有非常好的支持。

從這裏下載Webwork-2.0-beta2.zip。

(https://Webwork.dev.java.net/servlets/ProjectDocumentList)

解壓縮文件,你可以在Webwork-2.0\lib\optional目錄下找到jfreechart-0.9.13.jar。

你也可以從這裏下載最新的jfreechart-0.9.15.zip。

(http://www.jfree.org/jfreechart/index.html)

本文使用的是jfreechart-0.9.15.zip。

web應用的目錄結構圖如下所示:

/webapp/WEB-INF

/webapp/WEB-INF/web.xml

/webapp/WEB-INF/Webwork.tld

/webapp/WEB-INF/classes

/webapp/WEB-INF/classes/xwork.xml

/webapp/WEB-INF/lib

接下來請務必將下麵這些包放在/webapp/WEB-INF/lib 目錄下。

1、commons-logging.jar

2、ognl-2.5.1.jar

3、oscore-2.2.1.jar

4、xwork-1.0-beta.jar

5、Webwork-2.0-beta.jar

下麵是可以選擇的包,具體根據項目需要來決定是否添加:

cos-multipart.jar

pell-multipart.jar

velocity-dep-1.3.jar

2.1 配置你的xwork.xml

文件像下麵例子一樣,注意一定要包含Webwork-default.xml。

<!DOCTYPE xwork PUBLIC "-//OpenSymphony Group//XWork 1.0//EN" "http://www.opensymphony.com/xwork/xwork-1.0.dtd">

<xwork>

<include file="Webwork-default.xml"/>

<package name="default" extends="Webwork-default">

...

</package>

</xwork>

Webwork-default.xml這個文件在Webwork-2.0-beta.jar裏麵。

2.2 修改web.xml文件

修改web.xml文件以包含Webwork的設置,如何設置的內容,請察看