明月松間照 清泉石上流


                                                  ——— 兵臨城下   貓科動(dòng)物
          posts - 70, comments - 137, trackbacks - 0, articles - 23
            BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          最近比較忙!忙完后一點(diǎn)心得

          Posted on 2006-09-09 20:53 兵臨城下 閱讀(373) 評(píng)論(2)  編輯  收藏 所屬分類: Java EE
          ?????????好久沒有更新我的blog了!呵呵!最近比較忙!
          ?????????進(jìn)入公司用已經(jīng)整整5個(gè)月了,最近完成了項(xiàng)目升級(jí)版本中一個(gè)新增功能,做完以后現(xiàn)在回想起來,感覺很簡(jiǎn)單,沒做什么,可當(dāng)時(shí)做的時(shí)候怎么就感覺那么復(fù)雜呢?。ó?dāng)初的開發(fā)和后續(xù)的解bug,確實(shí)花了不少精力)
          ?????????通過這次的開發(fā),對(duì)公司這套系統(tǒng)架構(gòu)有了一個(gè)大概的了解,和大家討論共享一下:
          ?????????公司是做銀行金融軟件的,客戶主要面向國(guó)外(如亞洲的渣打銀行)。這套系統(tǒng)給我的第一感覺就是:自己發(fā)明了“輪子”。(看來公司還是有一點(diǎn)底蘊(yùn)的)
          ???????? Rod Johnson說不要重復(fù)發(fā)明“輪子” ,可我好像看到了一個(gè)新“輪子”。這個(gè)系統(tǒng)也是建立在J2EE的平臺(tái)上,但比較特殊,不是常見的web系統(tǒng),它是一個(gè)參數(shù)配置系統(tǒng),web中的所有業(yè)務(wù)元素都可以由配置文件來控制。在web程序之外,還有一套用Java Swing開發(fā)的配套軟件,對(duì)于不同的業(yè)務(wù)做不同的配置,生成一套參數(shù)供web使用。(靈活性相當(dāng)大)
          ?????????結(jié)合MVC來討論一下這套系統(tǒng):(系統(tǒng)分為web端和AP端)
          ?????????MODEL(AP):看來J2EE中Enity Bean確實(shí)有很多詬病,公司沒有采用任何的ORM,而是直接通過SQL語(yǔ)句與數(shù)據(jù)庫(kù)交互。但使用了Session Bean(stateless) 來做facade,封裝DAO層,來實(shí)現(xiàn)持久化邏輯。大概框架如此,不過其中為了實(shí)現(xiàn)分層,還有很多的control層和實(shí)現(xiàn)層。我還沒徹底理解就不說了。
          ????????VIEW、CONTROL(WEB):公司系統(tǒng)的view層沒有采用任何的開源框架,所有的動(dòng)態(tài)邏輯都是通過Tag來實(shí)現(xiàn)的。其實(shí)和struts一樣,只不過struts是寫好的Tag,而我們是用我們自己寫的Tag,雖然比較復(fù)雜,但控制的粒度精細(xì),是struts所不能比的(不是貶低struts,只是在粒度方面,struts確實(shí)不怎么樣)。
          ????????有一點(diǎn)我要說的是狀態(tài)管理。公司系統(tǒng)并沒有使用J2EE中的有狀態(tài)的Session Bean,而是把所有的狀態(tài)都保存在httpSession中,網(wǎng)上看到一些文章說,Session中存儲(chǔ)大量的信息會(huì)增加服務(wù)器的負(fù)擔(dān),不知道公司在性能方面是怎么考慮的。我覺得狀態(tài)管理是個(gè)很頭疼的問題,就是SSH架構(gòu)中,Spring也不能管理狀態(tài),我知道的就是J2EE中有狀態(tài)會(huì)話Bean是一個(gè)管理狀態(tài)的組件。把狀態(tài)信息存儲(chǔ)在Session中使用起來確實(shí)很方便,但server要維護(hù)這個(gè)狀態(tài)就很耗資源了。
          ?????????還有一點(diǎn)就是,公司系統(tǒng)中大量的使用了JS,因?yàn)槲覍?duì)JS不熟,所以讓我寫JS比較頭疼,留下的印象比較深。我曾經(jīng)問過我的一個(gè)朋友,問他公司的系統(tǒng)中JS的使用程度,他的回答是:能不用盡量不用。所以我現(xiàn)在比較疑惑,對(duì)JS的使用是不是有一個(gè)度的問題呢?
          ?????????還有一點(diǎn),我前面說過了,我們公司的系統(tǒng)是一個(gè)參數(shù)配置系統(tǒng),配置一個(gè)應(yīng)用需求,有一整套參數(shù),都是XML文件。所以在系統(tǒng)中的數(shù)據(jù)交互都是通過XML來組織的(也就是通過DOM)。比如說,當(dāng)一個(gè)用戶登錄后,會(huì)從數(shù)據(jù)庫(kù)和配置參數(shù)中讀取這個(gè)用戶的相關(guān)信息,存儲(chǔ)在DOM中,然后伴隨這個(gè)用戶的整個(gè)會(huì)話周期,交易的狀態(tài)和信息都可以從這個(gè)DOM中讀取。以前在學(xué)習(xí)XML時(shí),書中總是說XML是組織數(shù)據(jù)傳遞數(shù)據(jù)的,當(dāng)時(shí)不理解,現(xiàn)在總算明白了!呵呵!
          ?????????說了很多,只是一個(gè)初步的了解,歡迎各位網(wǎng)友發(fā)表看法!
          ?????????好了,不說了,剛下了部電影,看電影去了!呵呵!

          評(píng)論

          # re: 最近比較忙!忙完后一點(diǎn)心得  回復(fù)  更多評(píng)論   

          2006-09-12 09:30 by CoderDream
          不錯(cuò),支持一下!

          最近在學(xué)Struts框架,感覺很難把握,只能做得很小!

          留下QQ:85337464,希望以后能多交流!

          # re: 最近比較忙!忙完后一點(diǎn)心得  回復(fù)  更多評(píng)論   

          2008-02-27 11:48 by pudding
          強(qiáng)人~~受益匪淺。。感覺自己要走的路還很長(zhǎng)很長(zhǎng)很長(zhǎng)= =
          主站蜘蛛池模板: 萍乡市| 吉木乃县| 饶河县| 重庆市| 平顺县| 新邵县| 汾阳市| 瑞安市| 孟津县| 德阳市| 揭阳市| 茂名市| 华安县| 五常市| 山西省| 共和县| 成武县| 彭泽县| 中江县| 乌审旗| 万州区| 托克逊县| 全州县| 鄯善县| 怀化市| 永寿县| 东乌珠穆沁旗| 夏津县| 武鸣县| 马边| 依兰县| 南通市| 江陵县| 贡嘎县| 泽库县| 乐至县| 济阳县| 高安市| 吴江市| 库尔勒市| 六枝特区|