Java開發web的幾種開發模式
Java Web開發方案有多種可供選擇,這裏列舉一些經典的開發模式進行橫向比較,爲Java Web的開發模式選擇提供參考。下面是小編整理的關於Java開發web的幾種開發模式,希望大家認真閱讀!
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程序框架。
構成:核心模塊:實現了IOC模式,包含BeanFactory類負責對JavaBean的配置與管理。
上下文模塊:繼承BeanFactory類,
添加了事件處理、國際化、資源裝載、透明裝載以及數據校驗等功能,
提供了框架式的Bean訪問方式和很多企業級功能。
如:JNDI訪問、支持EJB、遠程調用、繼承模板框架、E-mail和定時任務調度等。
AOP模塊:提供了用標準Java語言編寫的AOP框架,
使應用程序拋開EJB的複雜性,但擁有傳統EJB的關鍵功能。
DAO模塊:提供了JDBC的抽象層,並且提供了對聲明式事物和編程式事務的支持。
Web模塊:建立在上下文模塊基礎之上,提供了Servlet探聽器的Context和Web應用的上下文。
對現有的Web框架如:JSF、Tapestry、Struts等提供了集成。
O/R映射模塊:提供了對現有ORM框架的支持如Hibernate。
Spring MVC框架:建立在覈心模塊之上,嫩夠適應於多種多視圖、模板技術、國際化和驗證服務,
實現控制邏輯和業務邏輯清晰的分離。
Struts+HIbernate開發方案:
特點:利用Struts的MVC設計模式,與Hibernate持久化對象組成的開發方案。
Struts+Spring+Hibernate開發方案:
特點:Struts負責表示層,
Spring負責邏輯層的業務,
Hibernate持久層中數據庫的操作,組成的開發方案。
相關文章
-
Java Web開發和J2EE的區別
在我們平凡的日常裏,大家總免不了要接觸或使用作文吧,藉助作文人們可以反映客觀事物、表達思想感情、傳遞知識信息。你寫作文時總是無從下筆?以下是小編收集整理的態度決定命運作文4篇,僅供參考,大家一起來看看吧。態度決 -
javaweb開發和j2ee區別
在學習java過程中,你知道javaweb開發和j2ee區別嗎?下面yjbys就爲大家分享javaweb開發和j2ee兩者的區別,僅供參考!J2EE是一種規範,是一種基於框架的開發. 1 javaweb開發基於JAVA的一般WEB開發,包括了JSP/SERVLET 需要 -
關於Java和PHP在Web開發方面的區別
比較PHP和JSP這兩個Web開發技術,在目前的情況是其實是比較PHP和Java的Web開發。以下是就幾個主要方面進行的比較: 一、 語言比較PHP是解釋執行的服務器腳本語言,首先php有簡單容易上手的特點。語法和c語言比較象,所以 -
Java中基於Aspectwerkz的AOP開發
一、AOP編程概覽面向對象編程技術進入軟件開發的主流對軟件的開發方式產生了極大的影響,開發者可以用一組實體以及這些實體之間的關係將系統形象地表示出來,這使得他們能夠設計出規模更大、更復雜的系統,開發週期也比以 -
Java程序員必知的幾種系列輔助開發工具
Java是一門面向對象編程語言,不僅吸收了C++語言的各種優點,還摒棄了C++裏難以理解的多繼承、指針等概念,因此Java語言具有功能強大和簡單易用兩個特徵。以下是爲大家分享的Java程序員必知的幾種系列輔助開發工具,供大家參 -
LabView開發嵌入式應用的技巧
無論使用什麼設計語言,不良的編程技術都會給一個應用的性能帶來負面影響,對一個嵌入式應用尤其如此。儘管對於絕大部分應用來說,高效率的編程技術是重要的,但對於嵌入式應用所工作的資源極度缺乏的環境,則要求對性能和存儲 -
JAVA語言研發WEB軟件知識
我們的生活,離不開海洋,而海洋動物卻遭到我們的殺害,瀕臨滅絕。小編在此整理了保護海洋動物演講稿,供大家參閱,希望大家在閱讀過程中有所收穫!一場特殊的宣判在地球剛剛形成時,最先見到是那蔚藍的大海,生命在此繁殖,不停的演 -
Java4安卓開發教程之java的變量
什麼是變量?在計算機中用來存儲信息,通過聲明語句來指明存儲位置和所需空間。變量的聲明方法及賦值分號:語句結束標誌 賦值號:將=右邊的值賦給左邊的變量變量有哪些數據類型? 變量的命名語法規範(合法)1、以字母、下劃線 -
JAVA認證經驗分享:學好java開發的關鍵七步
學好java開發的關鍵七步:1、多動手;2、多動腦;3、多查API文檔;4、約束自己,規範編碼習慣;5、用有意義的名字;6、添加適量的註釋;7、相信自己。 1、多動手學編程語言不僅僅是從理論上的學習,更重要的是要利用這門語言 -
Java與Java web的區別大綱
在中國歷史上,咸豐帝雖算不上首屈一指的荒淫皇帝,但卻也是一位真正的風流天子,不僅沒有避免“飲食與美色”的引誘,還“聲色之好,本突過前朝”。周圍除了大堆貌美的滿族嬪妃,如嫡皇后薩克達氏、晉封的皇后鈕祜祿氏、懿貴妃那