在JSP頁面中使用JFreeChart繪製2D餅圖圖片

來源:互聯網
上載者:User

<%@ page language="java" pageEncoding="UTF-8"%><br /><%@ page import="org.jfree.data.general.DefaultPieDataset,<br /> org.jfree.chart.JFreeChart,<br /> org.jfree.chart.ChartFactory,<br /> org.jfree.chart.servlet.ServletUtilities"%><br /><%<br />DefaultPieDataset dpd = new DefaultPieDataset();<br />dpd.setValue("管理員", 25);<br />dpd.setValue("市場人員", 25);<br />dpd.setValue("開發人員", 45);<br />dpd.setValue("其他人員", 10);<br />JFreeChart chart = ChartFactory.createPieChart("某公司組織圖2D餅圖", dpd, true, false, false);<br />String fileName = ServletUtilities.saveChartAsPNG(chart, 1024, 768, session);<br />String url = request.getContextPath() + "/servlet/DisplayChart?filename=" + fileName;<br />%><br /><img src="<%=url%>" width="1024" height="768"/><br /><%--<br />=================================================================================================<br />org.jfree.chart.servlet.DisplayChart類繼承了javax.servlet.http.HttpServlet。它的描述如下<br />Servlet used for streaming charts to the client browser from the temporary directory<br />You need to add this servlet and mapping to your deployment descriptorin order to get it to work<br />翻譯:這是一個Servlet,被用來以流的形式從臨時目錄中將圖片發送到用戶端瀏覽器上<br /> 為了讓它能夠工作,你需要在部署描述符(web.xml)增加這個servlet以及它的映射<br />由於我們需要在JSP頁面中顯示圖片,所以就要在web.xml中映射好DisplayChart,如下所示:<br /><servlet><br /><servlet-name>DisplayChart</servlet-name><br /><servlet-class>org.jfree.chart.servlet.DisplayChart</servlet-class><br /></servlet><br /><servlet-mapping><br /><servlet-name>DisplayChart</servlet-name><br /><url-pattern>/servlet/DisplayChart</url-pattern><br /></servlet-mapping><br />=================================================================================================<br />ChartUtilities.writeChartAsJPEG()是面向Java Application的<br />ServletUtilities.saveChartAsPNG()是面向Web開發的<br />=================================================================================================<br />saveChartAsPNG()的傳回值是產生的圖片的名字,它所產生的圖片會儲存在伺服器的臨時目錄下<br />Tomcat6的臨時目錄是D:/Program Files/tomcat6/temp目錄<br />這裡我們的Java代碼是寫在JSP頁面中的<br />所以每訪問或重新整理一次頁面時,都會在伺服器臨時目錄中產生一張圖片<br />圖片的命名方式為【jfreechart-62412.png】<br />=================================================================================================<br />當使用在web.xml中配置的名為DisplayChart的Servlet的時候<br />它會根據它的filename到伺服器的臨時目錄中尋找圖片,最後顯示出來<br />所以應為DisplayChart指定filename參數,即【DisplayChart?filename=】部分是固定的<br />=================================================================================================<br />--%>

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.