`
fansfirst2008
  • 浏览: 95678 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

一个JFREECHART的小问题

阅读更多

  问题:用柱状图显示某个RUNCARD下所有工艺的预估时间和实际时间

准备

  由于第一次使用JFREECHART,所以没有什么好说的,去官方网站找文档,并且把软件包一并下下来!

  这一步很顺利,唯一的是USER GUIDE文档是要钱的,最后在CSDN上找到了相关文档!

第一步

  配置好初始环境,按照文档上引入JAR包,编译产生JDOC文档,这一步也是非常顺利的

  按照文档上说的一步一个脚印!

初步了解

  现在感觉,不管做什么,对整体抽象做一个大致了解,是开始做任何事情的第一步!这样会让后面做起来形成一个正确  

  的解决方案,到那时候,只要按照正确的方法坚定不移的试下去,就一定会成功!

  总的来说JFREECHART还是非常简单的,要不为什么要用JFREECHART,而不直接使用SWING呢?

  渲染器,工厂方法,数据模型,这几乎是所有涉及表现层的核心,所以虽然第一次,但是并不陌生!

难题的开始

  COPY成熟代码,加上自己的业务逻辑,几乎没有花什么时间,就轻松地让它像模像样的显示出来了

碰到一个一天的问题:由于工艺是有顺序的,而且工艺又可以重复的,所以显示上把相同工艺的覆盖掉了,只剩下一个

这个问题的复杂性,是由于没有深入了解JFREECHART的工作机制,而且又没有现成的API可使用,所以当时估计就要深入   源码,才能解决,事后证明了我的预感!

如何不会重复?

  敏感性告诉我:把工艺变成唯一,即可解决问题!经过讨论,工艺后面加上开始时间,可以做到业务上的唯一!很快上代码!

  一个会带来问题的问题的解决方案,虽然问题是解决了,可是显示上仍然带来了问题,由于业务在显示上需要简化!

  这个问题的敏感性告诉我,应该看渲染器的文档和源码,就可以相应的API实现!虽然大部分问题靠这样的敏感性可以找到,但事实上,事后证明这次的猜测是错误的!而且所有的功夫都是花在这个错误的思想上的!

  我发现由于天生的惰性,总想着会按自己的预期去猜,碰.而不愿意深入理解源码结构.这样使得问题总是陷入山穷水尽的地步!

不断的修改代码,基于不断的猜测!

  基于猜测的代码修改和代码调整,是无法找到可行方案的,除非实在很简单!我以前就总结出,任何一步的前进,是基于前面一个确信无疑的真理上的!如果前面就是猜测的,后面会错的更多!虽然有这个意识,但是总是要走前面的路的!

  文档上的突破口:

    看到文档上的一个突破口,然后实验性的写上代码,虽然没有达到解决问题,但是把我拉上正确解决问题的道路上!

   确定好思路,我发现实验性代码之所以错误,是因为没有找到正真的源头!然后打开调试队榨,一步一步追根溯底,终于发现了源头!

  覆盖类文件,修改代码,最终得到了想要的!

 花了一天时间完成的,觉得其中很多地方可以改进!写下来,下次别走弯路!

 结束用别人的话说,作为程序员,需要以最快的速度,最好的质量解决问题!

  

  

 

0
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics