BlogJava 聯(lián)系 聚合 管理  

          Blog Stats

          News

          近期活動(dòng):

          隨筆分類

          隨筆檔案

          朋友的BLOG

          社區(qū)


          無(wú)言獨(dú)上西樓,月如鉤,寂寞梧桐深夜鎖清秋

          2005年12月9日 #

            五一節(jié)(2005年啦),新本本分到手了,于是咱就動(dòng)手裝系統(tǒng)了。OS換成了Windows2003,然后稀里花啦裝 了一堆軟件。裝完之后,配置一個(gè)缺陷管理軟件,載入原有數(shù)據(jù),然后就發(fā)現(xiàn)連接不上了。系統(tǒng)拋出一個(gè)第三方數(shù)據(jù)庫(kù)連接器封裝后的異常,說(shuō)是無(wú)法裝載驅(qū)動(dòng)程序。檢 查ODBC、檢查PATH,一切OK。把所有可能的目錄全改為EVERYONE完全控制, 還是無(wú)法裝載驅(qū)動(dòng)程序。OK,咱想不會(huì)是MDAC的問題吧,查看MDAC版本,啊呀,居然是2.8。記憶中好象2.8與老的ODBC驅(qū)動(dòng)有點(diǎn)不兼容, DOWNGRADE也不成。唉,算了,咱重裝系統(tǒng)吧,在2000P上咱家裝這個(gè)軟件有很多次了,都沒有問題。反正是新本本,51也有時(shí)間。于是重裝OS, DOWNGRADE為2000P,這一次咱就狡滑了一點(diǎn)點(diǎn),先裝這個(gè)有問題的軟件。裝完之后,一試,還是無(wú)法裝載驅(qū)動(dòng)程序。這 下可暈菜了。一咬牙,重裝系統(tǒng),上2000Server。這樣連不上ORACLE,咱還可以移植到SQL Server。這一次裝完ORACLE之后,先 裝了一個(gè)數(shù)據(jù)庫(kù)訪問工具軟件,通過(guò)ODBC能訪問數(shù)據(jù)庫(kù)。太太地安心了,呵呵。于是裝Oracle Manager。裝完發(fā)現(xiàn)用ODBC連不上庫(kù)了!系統(tǒng)拋出的異常是ORACLE自身的無(wú)此服務(wù)名。啊阿,原來(lái)是這樣地說(shuō)。

            原來(lái)咱被第三方的連接器騙了!它捕獲了ORALE自身拋出的異常后,統(tǒng)一拋出了無(wú)法裝載驅(qū)動(dòng)程序的異常,這樣真實(shí)的原因就消失了。作為異常,它本身就應(yīng)該準(zhǔn)確地指出出現(xiàn)問題的地方的原因。不正確的封裝和處理,導(dǎo)致了毫無(wú)意義的異常。

            想開了去,很多軟件都存在這樣的問題,比如下面的代碼:

          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 " );

          }

            上面的代碼中,拋出的異常正確地指明了異常類型,即檢查未通過(guò),但存在的問題是:哪一項(xiàng)的檢查未通過(guò)?如果ITEMS有數(shù)百項(xiàng),運(yùn)行過(guò)程中出了問題,又有誰(shuí)知道是哪一項(xiàng)的數(shù)據(jù)有問題?如果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 無(wú)言獨(dú)上西樓 閱讀(338) | 評(píng)論 (0)編輯 收藏

               摘要:
          沃爾碼, DoD 強(qiáng)制要求RFID(1月1日)
          Oracle完成對(duì)PeolpeSoft的收購(gòu)(1月7日)
          “The World is Flat”一書發(fā)表(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 無(wú)言獨(dú)上西樓 閱讀(357) | 評(píng)論 (0)編輯 收藏

               摘要:   
            據(jù)Techworld12月14日的消息,為了提高可靠性,M$將把下一代Windows的圖形子系統(tǒng)從內(nèi)核中移出來(lái)。
            可以期待的是,或許有一天在M$的OS上,跑的窗口管理系統(tǒng)并不是MS Windows,而是一些開源的窗口管理器,如KDE之類的。  閱讀全文
          posted @ 2005-12-21 01:02 無(wú)言獨(dú)上西樓 閱讀(344) | 評(píng)論 (0)編輯 收藏

               摘要: 安裝了M$十二月的補(bǔ)丁后,可能影響使用了ActiveX的B/S應(yīng)用,存在兩種可能的原因。  閱讀全文
          posted @ 2005-12-19 09:55 無(wú)言獨(dú)上西樓 閱讀(547) | 評(píng)論 (1)編輯 收藏

          原來(lái)有幾個(gè)BLOG了,應(yīng)朋友的邀約,于是又開張一個(gè)。
          這一個(gè)是OneNote的風(fēng)格,恰恰我也在用OneNote做為個(gè)人的知識(shí)庫(kù),不知能否直接從OneNote發(fā)布過(guò)來(lái)。
          幾個(gè)BLOG任其發(fā)展吧,有的早不更新了,也有不好使的原因。
          posted @ 2005-12-09 18:06 無(wú)言獨(dú)上西樓 閱讀(386) | 評(píng)論 (1)編輯 收藏

               摘要: 任何一種技術(shù)都可以解決一些問題,但與此同時(shí),它也會(huì)帶來(lái)一些問題??蚣茏匀徊粫?huì)例外。這并不說(shuō)我們不要去使用框架,而是我們要合理的使用框架。用自己團(tuán)隊(duì)最熟悉的技術(shù),而不是最時(shí)髦的技術(shù)。  閱讀全文
          posted @ 2005-12-09 17:38 無(wú)言獨(dú)上西樓 閱讀(865) | 評(píng)論 (0)編輯 收藏

          主站蜘蛛池模板: 深州市| 安多县| 简阳市| 大姚县| 抚远县| 曲周县| 康平县| 商丘市| 雷山县| 凭祥市| 新田县| 贺州市| 太和县| 苏尼特左旗| 四川省| 咸宁市| 海伦市| 宜兰市| 凉山| 永善县| 进贤县| 广南县| 桦南县| 高陵县| 乌拉特中旗| 民乐县| 灵石县| 临夏市| 文山县| 行唐县| 兴和县| 大英县| 丰原市| 民和| 凤台县| 英山县| 寿光市| 朝阳县| 大宁县| 正宁县| 资阳市|