Java開發web的幾種開發模式

Java Web開發方案有多種可供選擇,這里列舉一些經典的開發模式進行橫向比較,為Java Web的開發模式選擇提供參考。除此之外還有好多方案(如Tapestry和Wicket等等)并不了解,這里就不列舉了。

JSP+JAVABEAN開發模式:
    特點:該模式將業務邏輯與頁面表現進行分離,在一定程度上增加了程序的可調試性和維護性。
    缺點:頁面將控制與顯示集于一身。
    結論:簡單,適合小型項目的快速構建與運行。

JSP+Servlet+JavaBean開發模式:
    特點:JSP作為視圖,來表現頁面;Servlet作為控制器,控制程序的流程并調用業務進行處理;JavaBean封裝了業務邏輯。遵循了MVC設計模式。
    缺點:沒有統一的開發框架導致開發周期長。

Struts開發方案:
    特點:成熟的MVC開發框架。
    構成:控制器:ActionServlet 組件:Struts框架的中央控制器。
                  RequestProcessor 組件:每個子??槎季哂械那肭蟠砥?。
                  Action 組件:業務代理,它將調用模型進行一項具體的業務邏輯處理。
              視圖:主要由JSP頁面構成
                        還包括HTML文檔;標準標簽庫(JSTL)和Struts標簽庫;
                        JavaScript腳本和CSS樣式;
                        多媒體文件;
                        消息資源文件;
                        ActionForm類。
              模式:通常在Structs中使用其他模型組建來實現業務邏輯。
                       如:JavaBean技術、EJB技術、Hibernates設計模式。
結論:對于一些大型的項目,Struts框架會提高開發效率,并對后期的維護有很大好處。

Spring開發方案:
    特點:擁有IOC和AOP兩種先進的技術為基礎,完美的簡化了企業級開發的復雜度,
             是一個理想的Web程序框架。
    構成:核心??椋菏迪至薎OC模式,包含BeanFactory類負責對JavaBean的配置與管理。
             上下文??椋杭壇蠦eanFactory類,
                                添加了事件處理、國際化、資源裝載、透明裝載以及數據校驗等功能,
                                提供了框架式的Bean訪問方式和很多企業級功能。
                                如:JNDI訪問、支持EJB、遠程調用、繼承模板框架、E-mail和定時任務調度等。
              AOP??椋禾峁┝擻帽曜糐ava語言編寫的AOP框架,
                               使應用程序拋開EJB的復雜性,但擁有傳統EJB的關鍵功能。
              DAO??椋禾峁┝薐DBC的抽象層,并且提供了對聲明式事物和編程式事務的支持。
              Web??椋航⒃諫舷攣哪?榛≈?,提供了Servlet監聽器的Context和Web應用的上下文。
                               對現有的Web框架如:JSF、Tapestry、Struts等提供了集成。
              O/R映射??椋禾峁┝碩韻鐘蠴RM框架的支持如Hibernate。
              Spring MVC框架:建立在核心??櫓?,嫩夠適應于多種多視圖、模板技術、國際化和驗證服務,
                                           實現控制邏輯和業務邏輯清晰的分離。

Struts+HIbernate開發方案:
    特點:利用Struts的MVC設計模式,與Hibernate持久化對象組成的開發方案。

Struts+Spring+Hibernate開發方案:
    特點:Struts負責表示層,
              Spring負責邏輯層的業務,
              Hibernate持久層中數據庫的操作,組成的開發方案。

來源:博客園

上一篇: Java程序員新手老手都離不開八大開發工具

下一篇: Java設計模式:生成器模式

分享到: 更多
致富专用卡是真的吗 重庆时时开彩结果记录 北京塞车计划全天计划 十一选5万能码任四 天津时时遗漏最大 双面盘是什么意思 MG摆脱游戏如何加减注 腾讯分分彩必中计划软件 足球计算器 北单上下单双全包 时时彩群 福彩3d大小最大遗漏 竞彩网 购彩人工计划软件 时时彩全天95计划网 东京15分彩手机计划