<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    beauty_beast

    上善若水 厚德載物

    目的:
    在實際項目中出于穩定性以及團隊開發技能我一直沒考慮采用Spring框架,最近有時間就計劃學習Spring框架,為以后的項目開發做相關的技術儲備。


    回顧:
    開源框架在以前的項目中用過不少, struts,webwork,hibernate,前兩者屬于web框架,后者屬于ORM框架,這些框架基本都是側重于應用的某個層面,不能稱之為J2EE全面的框架,往往是需要和其他框架相結合,我開發的項目采用過如下組合,有的根本就沒有框架,只是自己做了設計封裝
    a、servlet+jdbc,
    b、servlet+jsp+javabean+jdbc,
    c、struts+BD+DAO ,
    d、webwork+ejb+hibernate

    使用體會:

    ?a、b就不要說了,那時候的代碼結構真是天馬行空,我當時初學,維護公司一個項目代碼,1個jsp實現一個模塊所有功能,我花了好長時間才?讀懂代碼。
    ? 時代總是向前發展的,慢慢的系統結構層次上是越來越清晰,開發效率也越來越高,維護也越來越容易(基于一定的培訓成本)。
    ?
    ?相對而言出于設計理念來講,個人更喜歡webwork+hibernate框架組合。?

    ?常有人討論同等開發層面框架的優缺點,我所屬產品的另外一個項目團隊曾經為項目后續開發 應該采用struts還是webwork爭論的不可開交,?其實個人認為struts,webwork都是非常好的web框架,都有自身的優缺點:
    ?struts開創web MVC框架之先河,2003-2004年開發的項目基本都是采用struts框架(當時招聘人的時候常問會不會struts,會基本就招了?),實際MVC設計理念很早就提出了,在j2SE中有很多使用之處,但當時沒有一個web框架開發中很好的貫徹該設計理念,直到struts?出現(可能有,只是沒有apache更引人注意)。

    ?struts優點使用用戶多,相關技術文檔比較全面,開發遇到的問題相關案例也比較多、比較容易解決,框架更加穩定(這一點非常重要)。
    ?
    ?webwork相對于struts來講,的確有不少優異之處,(也是情理之中的事,后發布的框架如果再沒有優點別人也不會使用)
    ?個人認為在開發上主要有以下幾點:

    ?1、頁面數據封裝成值對象功能比struts強大,webwork采用ognl類型轉化。
    ?struts只能對簡單類型的數據對象以及文件對象封裝成值對象,?而webwork封裝的值對象基本沒有限制,值對象屬性還可以是List,Map這些對象(這個特性在我們開發一些批量數據、復雜數據處理時非常方便),減少很多代碼量,代碼非常整潔。
    ?
    ?2、攔截器功能
    ?攔截器是webwork的一個亮點,實際上也是業界比較流行的AOP的一個體現,在實際開發中你可以配置默認的攔截器,?也可以為單獨的模塊指定特定的攔截器,并且可自定義攔截器,action執行前后攔截都可以。?
    ?
    ?3、單元測試比較方便
    ?最早使用struts框架開發測試時,相關的單元測試基本是不好做的,無法脫離web環境,測試都是只做集成測試、系統測試。
    ?使用webwork可以簡單對action相關屬性賦值,可以相關的單元測試,當然前提是在對應action中沒有引用web環境相關的對象。?
    ?其實webwork框架核心還是xwork框架,最早框架使用在C/S結構下,webwork只是xwork的一個在web環境的實現,只是ActionContext?上下文發生了變化,所以說action能夠做到脫離web環境也是情理之中的。


    4、配置文件
    webwork配置文件可以采用引用、繼承其他配置文件方式,在團隊開發一般都是分模塊開發,這樣比較方便,配置管理更容易,不會沖突。

    5、模板技術集成
    ?我在實際應用項目中是采用velocity模板做視圖展現,因為在對應版本的webwork框架中和velociy集成的相當好,比較方便,?比直接寫jsp代碼更整潔、同時利用velocity模板特性結合每個action的配置文件,可實現比較通用的頁面查詢、錄入等視圖的展現。
    ?而struts是沒有相關模板集成,不過struts的tag相對而言比webwork的tag好用,webwork如果視圖是jsp類型,相關的tag真的比較麻煩,?雖然tag 庫很豐富,這也是我為什么使用velocity做視圖的原因 。?
    ?
    6、 框架的效驗功能
    ?老實說,兩者框架的效驗功能都比較麻煩,相對而言webwork更加麻煩點,配置較多,驗證接口實現太麻煩,我實際項目使用中還是?自定義了相關后臺驗證接口, 要驗證的相關action只要實現相關接口即可,相關攔截器負責攔截驗證,?大部分的效驗根據配置數據以及html對象自定義屬性通過javascript通用效驗,實際上現在基于XmlHttp的ajax技術應用成熟的話,?后臺驗證接口的用途會逐漸淡化。
    ?
    ?說明上述比較版本為 struts 1.0 /webwork 2.1.6,后續struts框架擴展很多功能,不是很了解,可能和上訴描述不一定很吻合。
    ?
    ?現在兩者已經合并,希望能結合兩者的優勢,發展出更好web框架。
    ?
    7、關于Hibernate還是DAO模式,個人建議采用hibernate+DAO相集合的模式,hibernate占主導地位。
    ?雖然DAO模式通過自動生成代碼效率不會低,但如果需求變更就比較麻煩,維護修改代碼較多,測試工作量也較大,?但Hibernate不是萬能的,在一些必要的應用還是采用DAO模式,特別是性能相關的部分。
    ?
    ?
    ?廢話一大堆,也算把我的工作回顧了一遍,呵呵,這兩天簡單了解Spring框架,個人感覺Spring更像一個全面的J2EE框架解決方案,?希望能夠有時間系統的學習一把,大家有興趣的請多多交流,我會將我的學習心得和大家分享。
    ?
    ?


    ?
    ?
    ?
    ?
    ?
    ?
    ?
    ?
    ?
    ?
    ?
    ?


    ?

    Feedback

    # re: Spring框架學習前言---我的開源框架使用心得體會  回復  更多評論   

    2006-05-17 09:36 by Harryson
    很想聽聽關于d、webwork+ejb+hibernate 的好處.

    # re: Spring框架學習前言---我的開源框架使用心得體會  回復  更多評論   

    2006-05-17 10:43 by 柳隨風
    @Harryson
    呵呵,這是根據實際項目使用環境決定的,
    webwork的優點我已經介紹了,
    采用hibernate 是因為減少代碼量提高開發效率,后期維護相對更好
    使用ejb主要有幾個原因:
    a、健壯、成熟、穩定 (只使用無狀態會話Bean)
    b、容器管理事務
    c、做集群比較容易、方便
    并且負責的層面非常清晰,三者目前都比較成熟
    webwork web層
    ejb 業務層
    hibernate 持久層

    # re: Spring框架學習前言---我的開源框架使用心得體會  回復  更多評論   

    2006-05-17 11:40 by Flyingis
    樓主的分析讓我學習不少,我先了解,具體使用什么框架看工作需要了。

    # re: Spring框架學習前言---我的開源框架使用心得體會  回復  更多評論   

    2006-09-10 17:26 by ads
    hao
    主站蜘蛛池模板: 黄色毛片免费观看| 亚洲成在人线在线播放无码| 国产精品免费一区二区三区| 国产免费黄色大片| 亚洲日韩AV一区二区三区中文| 久久精品a一国产成人免费网站 | 国产成人精品日本亚洲专一区 | 国产v亚洲v天堂a无| 中文字幕免费在线看线人| 亚洲激情视频在线观看| 色猫咪免费人成网站在线观看| 亚洲国产精品国自产拍AV| 国产高清不卡免费视频| 91亚洲一区二区在线观看不卡| 亚洲人成免费电影| 男人天堂2018亚洲男人天堂| 好男人看视频免费2019中文| 色窝窝亚洲av网| 久久亚洲色一区二区三区| a毛片在线免费观看| 亚洲色成人网一二三区| 成人性生交大片免费看无遮挡| 亚洲s码欧洲m码吹潮| 亚洲欧洲日本在线| 久久国产精品国产自线拍免费| 亚洲黄色三级视频| 最近的免费中文字幕视频 | 在线观看亚洲av每日更新| 免费一区二区三区| 亚洲一区动漫卡通在线播放| 韩国欧洲一级毛片免费| 国产VA免费精品高清在线| 亚洲精品网站在线观看你懂的| 日本免费网站在线观看| 久久免费国产精品| 亚洲国产一区在线观看| 免费一级特黄特色大片在线| 久久这里只精品99re免费| 亚洲不卡影院午夜在线观看| 久99精品视频在线观看婷亚洲片国产一区一级在线 | 羞羞网站免费观看|