jfreechart访问慢????

liuqibo001 2006-12-25 03:12:12
现在公司做一个项目,需要显示统计图.用到了jfreechart1.0.1 在我的机器上配置好后运行没问题.在其他人的机器上运行也还算可以 不算慢.但是有一次在一个WIN2000系统上运行就超慢(10秒左右).而且当图形显示后,再刷新页面,从刷新页面到图形显示出来还是10秒多.....郁闷了好久了 不知道怎么回事.我的代码很简单啊,为什么会这样,是jfreechart本身问题还是有什么其他问题啊.高手们帮帮我啊.
补充:
怀疑java虚拟机问题,于是在那个win2000的机器上更新了java虚拟机,开始还是好的 但是第二天又回到老样子了...晕了
我的机器是winxp2


高手们 帮帮小弟啊~-~

...全文
255 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuqibo001 2006-12-26
  • 打赏
  • 举报
回复
但是如果是防火墙的问题,总不能让访问用户都关闭放火墙吧(其实我到觉得这不是问题,但是我都会想到我们那个让人敬爱的BOSS会提出这个问题让我解决.就拿上次我怀疑是java虚拟机的问题,还没等我说完呢,他就开说:"java虚拟机器是什么?!客户上你的网站还让人家装东西,那绝对不行!"我说:"java虚拟机是java的运行环境,是windows..."还没等我说完"自带的,只要自动升级就行",他就说:"听不明白我说什么?让客户装东西就不行!"虽然后来知道不是虚拟机的问题,但是他这两句话也说名点问题吧).有什么其他的解决办法吗?
liuqibo001 2006-12-26
  • 打赏
  • 举报
回复
如果光看配置,我用做测试的三台机器跟我的配置是一样的
而且有两台2000访问我的响应时间差不多,都很慢.

防火墙?以前还真没注意这方面的事.试试看会不会有好转 呵呵.

谢谢各位对小弟的帮助!!
liqiang208 2006-12-26
  • 打赏
  • 举报
回复
呵呵 兄弟我前段时间也碰到了这个问题

我后来发现是防火墙的原因,我用的是卡巴,禁用了防火墙之后就完全正常了
伟大的左前卫 2006-12-26
  • 打赏
  • 举报
回复
关注。我之前也是把卡巴关了就正常,还没找到原因。
lixiaoxue85 2006-12-25
  • 打赏
  • 举报
回复
机器的原因
  • 打赏
  • 举报
回复
因为这个东西还是很容易掌握的,所以一般不会为它专门建群的。

这个现象明显是那台机器的问题。犯不上为这个较劲。
zxm_dgcstars 2006-12-25
  • 打赏
  • 举报
回复
为什么没有人建立JFreeChart群了?
那为兄台建立一个,我好 加入
liuqibo001 2006-12-25
  • 打赏
  • 举报
回复
唉,先对你顶我帖子表示感谢。
然后想要告诉你的是,你那点东西我会,不劳你老人家费心了。
liuqibo001 2006-12-25
  • 打赏
  • 举报
回复
synchronized是干什么的? 你有MSN吗 要好好象你学习一下 呵呵
我的是 liuqibo001@hotmail.com
还望不吝赐教
  • 打赏
  • 举报
回复
现在例子连接已经关闭.

我写的jfreechart封装类CreateJFreeChart中使用了synchronized,估计是你没使用这个造成的吧.
liuqibo001 2006-12-25
  • 打赏
  • 举报
回复
to:liaohaiying(小菜)
呵呵,用缓存没问题,我只是想知道为什么同样的东西在xp下访问就正常,在2000下就会慢。我是想找到真正原因。看看有没有人跟我碰到了一样的事情,我想知道他是怎么解决的。
再次谢谢你的再次关注*^_^*

to:AreamArgentateOfWing(梦幻银翼)

例子收到,谢谢谢谢。咱俩写的思路不太一样。不过你的图确实比我的要快很多。为什么呢?? 想不懂。不过至少给了点思路 呵呵 让我进一步了解了jfreechart的应用。谢谢


问题还存在。期待高手指教。为什么我的代码用起来就会慢???
  • 打赏
  • 举报
回复
http://218.246.23.46/webedit/soft/jfreechart.rar
看test.jsp里面的例子.用我写的方法试试,看能不能帮助你.
liaohaiying 2006-12-25
  • 打赏
  • 举报
回复
不是说了吗,用缓存
liuqibo001 2006-12-25
  • 打赏
  • 举报
回复
以上就是代码部分,运行正常.
其中
-------------------------------------------------------
List list1 = ResultSetAction.getCameraNumStatK();
Iterator ite1 = list1.iterator();
List list2 = ResultSetAction.getCameraNumStatUK();
Iterator ite2 = list2.iterator();
-------------------------------------------------------
接收了ResultSetAction中的方法得到了数据库查询结果.用同样的方法显示表格一点都不慢.但是用到这里,在那台win2000的机器上显示就那么慢.....郁闷中.....
liuqibo001 2006-12-25
  • 打赏
  • 举报
回复
jfreechart.jsp

<%
JFreeChart chart = aa.JFAction();

String filename = ServletUtilities.saveChartAsJPEG(chart, 800, 430, null, session);
String graphURL = request.getContextPath() + "/servlet/DisplayChart?filename=" + filename;
%>
<html>
<head>
<meta http-equiv="cache-control" content="no-cache">
<META HTTP-EQUIV="PAGE-ENTER" CONTENT="REVEALTRANS(DURATION=3,TRANSITION=6)">
<link href="CSS/style.css" rel="stylesheet">
<style type="text/css">
<!--
TH{height:"25";align:"center";font-size:"15px";background-image:url(image/back.gif);}
TD{font-size:"15px";valign:"middle"}
-->
</style>
</head>
<body topmargin="50" bgcolor="black" text="#ffffff">
<center>

<img src="<%= graphURL %>" width=800 height=430 border=0 usemap="#<%= filename %>">
<form action="shuliangtongji.jsp" name="form" target="frame">
<table width="800" align="center" border="0" cellspacing="0" cellpadding="0"><tr><td><hr color="orange"></td></tr></table>
<table width="800" border="1" bordercolor="black" cellspacing="0" cellpadding="1" align="center">
<tr>
<td align="center"><a href="camera_num_stat.jsp"><font color="yellow">重新查询</font></a></td>
</tr>
</table>
</form>
</center>

</body>
</html>
liuqibo001 2006-12-25
  • 打赏
  • 举报
回复
JFreeChartAction.java:

public class JFreeChartAction {

public static JFreeChart JFAction(){

DefaultCategoryDataset dataset = new DefaultCategoryDataset();
List list1 = ResultSetAction.getCameraNumStatK();
Iterator ite1 = list1.iterator();
List list2 = ResultSetAction.getCameraNumStatUK();
Iterator ite2 = list2.iterator();
CameraBean camera1 = new CameraBean();
while(ite1.hasNext()){
CameraBean camera = (CameraBean)ite1.next();
dataset.addValue(camera.getKsum(),camera.getArea_name(),"男");
}
while(ite2.hasNext()){
CameraBean camera2 = (CameraBean)ite2.next();
//dataset.addValue(camera2.getUkksum(),camera2.getArea_name1(),"总数");
dataset.addValue(camera2.getUksum(),camera2.getArea_name1(),"女");
}
JFreeChart chart = ChartFactory.createBarChart3D("数据统计","名称","成绩",dataset,PlotOrientation.VERTICAL,
true,
false,
false);
return chart;
}
}

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧