泥巴麒麟的BLOG

          shenAwesome@hotmail.com 縱不能,將醉做生涯,休拘束

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            195 Posts :: 2 Stories :: 80 Comments :: 0 Trackbacks

                             關于applet
             近年來,
          webhtml技術框架一直是j2ee應用的主流,表示層技術有:struts,webwork,spring-mvc等。

          從用戶角度來說,這些view層技術提供的重點功能是:

          1.完成用戶狀態的保持 (例:一個用戶的登陸狀態,購物車里的物品)

          2.特別的,表單信息的保存(用戶輸入后,如果不成功,回退頁面,必須顯示原信息)

          3.Validation機制

          4.數據顯示(使用modelview中拼裝數據)

          5.i18n等常見問題有較成熟的解決辦法

              程序員角度來說,這些技術提供了如下便利

          1.流程控制有一個較為集中的配置文件。便于修改

          2.mvc分離,有較為清晰的邏輯結構

          3.有些框架的攔截機制等,可以集中一些通用邏輯。

          但在實踐中, web層的系統千篇一律,不夠美觀。在電信前臺大量輸單等應用中,實上也不夠方便。web的優勢是易于分發,統一管理,同時提出了很多良好的設計理念和框架模型

          其實我們最早用delphic/s或者三層架構(加應用服務器)的時候,是多么如魚得水,顯示幾個數據表,做幾個master/detail,真的是手到擒來,拖拖拽拽而已。在web程序中費盡心力才能解決的難點,在application將化為無形。

          但applet應用較少,關鍵在于:
              客戶瀏覽器不能直接支持(很可能需要裝j2se),
              沒有很好的應用框架來減輕程序員的負擔,我手頭的gui工具也不夠理想,開發需要對swing有較深理解。applet技術近四五年來一直停頓,基本沒有什么成熟組件的支持,沒有現成框架,沒有開源tag,沒有css/javascript支持,開發效率可能不高。
          目前基本框架設計如下:

           o_image001.gif

          DB :       數據庫

          Dao:       使用hibernate實現的瘦Dao

          Service:    Spring管理的業務外觀,實現事務粒度,Dao被注射

          Module:    Service Dao實例注射到Module,這里將完成業務邏輯。

          Dispatcher  位于logic,是service的一個分發器,采用反射機制,自動調用service對應的方法

          Servlet     負責和applet通信,通過Dispatcher  調用業務邏輯

          Applet     view的實現

           

          特別:

          1.Dao的實現

          在上一個項目中,我為每個實體類都作了一個Dao,但hibernate使得dao實現非常簡單一致,在代碼中事實上就導致了大量非常類似的貧血Dao實現。所以這次準備只做一個Dao接口,通用于各種實體類,雖然不夠清晰,但結合hibernate的強大應是可行的。

          2.        Servletapplet的通信,采用ObjectStream方式,簡單省力,將完成一個專用的容器類,同時注意,applet中將直接使用domain對象。

          3.  最后可在server端預留webwork環境備用

          關于Applet技術:

          1.      所有的業務邏輯通過ServletClient訪問。

          2.      所有的資源(圖片,聲音,文件) Resource獲得,內部采用getResource();

          3.      i18n問題采用resoucbundle,通過I18N轉換(這里不知道有否更好辦法)

          4.      外觀和風格用Sun的標準,暫不另加

          5.      報表技術采用freeReport,擬用反射技術實現運行期報表,其余采用simpleXml格式完成報表設計。

          6.      freeReport同時解決了數據輸出問題(pdf,xls);

          7.  所有相關jar需要做applet簽名以獲得本地操作權限

          效果示例:

           r_image003.jpg

           

           

          posted on 2005-06-28 16:36 泥巴麒麟 閱讀(597) 評論(4)  編輯  收藏

          Feedback

          # re: 關于新的applet項目 2005-06-28 16:47 Emma
          真可憐啊,沒人給你留言,你也學學FRJJ,弄點照片說點酸話什么的  回復  更多評論
            

          # re: 關于新的applet項目 2005-07-08 09:57 david
          可不可以教我怎么做Applet呢?我一般都在WEB上開發的!  回復  更多評論
            

          # re: 關于新的applet項目 2005-08-20 10:49 blackzerg
          applet開發和swing application 非常類似。只是需要考慮授權等問題。同時要考慮程序的大小,這點很頭痛。  回復  更多評論
            

          # re: 關于新的applet項目 2006-06-13 16:55 slata2003
          我正要做這個,,,,希望進一步進行切磋~  回復  更多評論
            


          只有注冊用戶登錄后才能發表評論。


          網站導航:
          博客園   IT新聞   Chat2DB   C++博客   博問  
           
          主站蜘蛛池模板: 安义县| 高邑县| 区。| 噶尔县| 涞水县| 商城县| 岢岚县| 太湖县| 襄城县| 海安县| 龙南县| 如皋市| 翁牛特旗| 响水县| 邮箱| 锦屏县| 六安市| 桃园市| 荔浦县| 南皮县| 宝兴县| 安泽县| 武冈市| 乌审旗| 南乐县| 台湾省| 太谷县| 宁国市| 泰和县| 五莲县| 年辖:市辖区| 资中县| 惠东县| 景洪市| 米易县| 祁东县| 泰兴市| 凌海市| 隆德县| 沅陵县| 宜黄县|