jfreechart里在页面上生成临时图片的过程剖析

2008-02-23 10:12:07来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

本人研究jfreechart也有些日子了,网上入门的文章很多,可是比较深入的并不多。我也是从一两篇的入门文章开始的,后来就是全靠自己研究demo的源码。因为我做的多是基于B/S结构的,所以图片都是使用org.jfree.chart.Servlet.DisplayChart这个类来显示的,我今天看了一下相关的源码,大致过程如下。

在网上的好多例子里,先是DisplayChart的service()方法调用ServletUtilities的saveChartASPNG(JFreeChart chart, int width, int height,HttpSession session)方法,在这个过程里,saveChartAsPNG方法先生成临时文件的名字,然后调用org.jfree.chart.ChartUtilities的saveChartAsPNG(File file, JFreeChart chart,int width,int height,ChartRenderingInfo info,boolean encodeAlpha),在服务器的临时文件夹里生成图片,接下来是把图片文件与org.jfree.chart.servlet.ChartDeleter绑定(就是将图片文件名传递给这个类),ChartDeleter类继承了HttpSessionBindingListener接口,主要作用是当用户session失效的时候,删除临时文件夹里的图片,这个类是存在于session之中的。最后调用ServletUtilities的sendTempFile(File file, HttpServletResponse response,String mimeType)用输出流输出图片。

概括一下就是说,图片是存放于服务器的临时文件夹里,用户session失效后,程序会自动删除图片的。

网上看了好久,有很多人问关于jfreechart的问题,可是问的多,答的少,好不容易有一个
论坛专门讨论jfreechart的事情,可惜没有人气,如果有可能的话,我会把我的一些积累和大家分享,希望能够聚起更多热爱jfreechart的朋友!

上一篇: 使用SOAP开发java web服务
下一篇: Java Threading中的final变量

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:WebLogic管理最佳实践

下一篇:在类中取得当前文件所在的相对路径与绝对路径