BlogJava 联系 聚合 管理  

Blog Stats

News

近期活动:

随笔分类

随笔档案

朋友的BLOG

社区


无言独上西楼,月如钩,寂寞梧桐深夜锁清秋

2006年4月12日 #

  五一节(2005年啦),新本本分到手了,于是咱就动手装系统了。OS换成了Windows2003,然后稀里花啦装 了一堆软件。装完之后,配置一个缺陷管理软件,载入原有数据,然后就发现连接不上了。系统抛出一个第三方数据库连接器封装后的异常,说是无法装载驱动程序。检 查ODBC、检查PATH,一切OK。把所有可能的目录全改为EVERYONE完全控制, 还是无法装载驱动程序。OK,咱想不会是MDAC的问题吧,查看MDAC版本,啊呀,居然是2.8。记忆中好象2.8与老的ODBC驱动有点不兼容, DOWNGRADE也不成。唉,算了,咱重装系统吧,在2000P上咱家装这个软件有很多次了,都没有问题。反正是新本本,51也有时间。于是重装OS, DOWNGRADE为2000P,这一次咱就狡滑了一点点,先装这个有问题的软件。装完之后,一试,还是无法装载驱动程序。这 下可晕菜了。一咬牙,重装系统,上2000Server。这样连不上ORACLE,咱还可以移植到SQL Server。这一次装完ORACLE之后,先 装了一个数据库访问工具软件,通过ODBC能访问数据库。太太地安心了,呵呵。于是装Oracle Manager。装完发现用ODBC连不上库了!系统抛出的异常是ORACLE自身的无此服务名。啊阿,原来是这样地说。

  原来咱被第三方的连接器骗了!它捕获了ORALE自身抛出的异常后,统一抛出了无法装载驱动程序的异常,这样真实的原因就消失了。作为异常,它本身就应该准确地指出出现问题的地方的原因。不正确的封装和处理,导致了毫无意义的异常。

  想开了去,很多软件都存在这样的问题,比如下面的代码:

public   void  checkAll()  throws  CheckException{

  
for  ( int  i = 0 ;i < items.length;i ++ ){

    checkItem(items[i]);

  }

}

public   void  checkItem(Item item)  throws  CheckException{

  
if  (check not passed)

    
throw   new  CheckException( " Check not passed " );

}

  上面的代码中,抛出的异常正确地指明了异常类型,即检查未通过,但存在的问题是:哪一项的检查未通过?如果ITEMS有数百项,运行过程中出了问题,又有誰知道是哪一项的数据有问题?如果checkItem改一改就很好了,如:

public   void  checkItem(Item item)  throws  CheckException{

  
if  (check not passed)

    
throw   new  CheckException( " Check not passed, item is : "   +  item.getName());

}

posted @ 2006-04-12 15:27 无言独上西楼 阅读(321) | 评论 (0)编辑 收藏

2005年12月21日 #

     摘要:
沃尔码, DoD 强制要求RFID(1月1日)
Oracle完成对PeolpeSoft的收购(1月7日)
“The World is Flat”一书发表(4月5日)
CardSystem被黑(5月22日)
Sun开放Solaris(6月14日)
AMD控告Intel(6月28日)
SOX再一次延迟(9月21日)
马萨诸塞州为Open Documents投票(9月21日)
Vapor Without the Ware(10月4日)
SQL Server, Visual Studio 2005面世(11月7日)  阅读全文
posted @ 2005-12-21 09:40 无言独上西楼 阅读(341) | 评论 (0)编辑 收藏

     摘要:   
  据Techworld12月14日的消息,为了提高可靠性,M$将把下一代Windows的图形子系统从内核中移出来。
  可以期待的是,或许有一天在M$的OS上,跑的窗口管理系统并不是MS Windows,而是一些开源的窗口管理器,如KDE之类的。  阅读全文
posted @ 2005-12-21 01:02 无言独上西楼 阅读(331) | 评论 (0)编辑 收藏

2005年12月19日 #

     摘要: 安装了M$十二月的补丁后,可能影响使用了ActiveX的B/S应用,存在两种可能的原因。  阅读全文
posted @ 2005-12-19 09:55 无言独上西楼 阅读(533) | 评论 (1)编辑 收藏

2005年12月9日 #

原来有几个BLOG了,应朋友的邀约,于是又开张一个。
这一个是OneNote的风格,恰恰我也在用OneNote做为个人的知识库,不知能否直接从OneNote发布过来。
几个BLOG任其发展吧,有的早不更新了,也有不好使的原因。
posted @ 2005-12-09 18:06 无言独上西楼 阅读(375) | 评论 (1)编辑 收藏

     摘要: 任何一种技术都可以解决一些问题,但与此同时,它也会带来一些问题。框架自然不会例外。这并不说我们不要去使用框架,而是我们要合理的使用框架。用自己团队最熟悉的技术,而不是最时髦的技术。  阅读全文
posted @ 2005-12-09 17:38 无言独上西楼 阅读(846) | 评论 (0)编辑 收藏

仅列出标题