本篇文章為大家展示了JavaEE完整體系架構是怎樣的,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
網(wǎng)站建設公司,為您提供網(wǎng)站建設,網(wǎng)站制作,網(wǎng)頁設計及定制網(wǎng)站建設服務,專注于企業(yè)網(wǎng)站建設,高端網(wǎng)頁制作,對成都假山制作等多個行業(yè)擁有豐富的網(wǎng)站建設經驗的網(wǎng)站建設公司。專業(yè)網(wǎng)站設計,網(wǎng)站優(yōu)化推廣哪家好,專業(yè)成都網(wǎng)站推廣優(yōu)化,H5建站,響應式網(wǎng)站。
JavaEE是一套使用Java進行企業(yè)級Web應用開發(fā)的大家一致遵循的工業(yè)標準。 JavaEE平臺提供了一個基于組件的方法來加快設計、開發(fā)、裝配及部署企業(yè)應用程序。 相較于Microsoft的.NET,Sun公司的Java*E和一系列標準、技術及協(xié)議更接近或更滿足互聯(lián)網(wǎng)在智能化Web服務方面對開放性、分布性和平臺無關性的要求。
1、JDBC(Java Database)數(shù)據(jù)庫連接
JDBC是一組用于執(zhí)行SQL的Java API ,為訪問不同的數(shù)據(jù)庫提供了一種統(tǒng)一的途徑,幾乎所有的關系型數(shù)據(jù)庫廠商(DBMS)都提供了JDBC的服務或驅動。JDBC對數(shù)據(jù)庫的訪問也具有平臺無關性。
2、JNDI(Java Naming and Directory Interfaces)Java 的命名和目錄接口
JNDI是命名目錄服務的抽象接口集合,為企業(yè)級應用提供了統(tǒng)一的標準化連接,使Java能夠無縫地獲取任何可目錄化的企業(yè)信息。在JavaEE體系中,JNDI用來定位各種對象,包括EJB、數(shù)據(jù)庫驅動、JDBC數(shù)據(jù)源及消息連接等。由于JNDI是獨立于目錄協(xié)議的,因此還可以用JNDI訪問各種特定的目錄服務,如LDAP(輕量目錄訪問協(xié)議)、NDS(服務器目錄訪問服務)。
3、EJB(Enterprise JavaBean)
EJB組件:JavaBean是在編程環(huán)境(IDE)中能夠被可視化處理的可重用組件,是實現(xiàn)分布式業(yè)務邏輯的 Java 組件。我們在開發(fā)的時候可以利用這些組件,像搭積木一樣建立面向對象的分布式應用。 EJB容器:是EJB組件的運行環(huán)境,為部署EJB組件提供服務,包括事務、安全、遠程客戶端的網(wǎng)絡發(fā)布、資源管理等。 EJB服務器:管理EJB容器的高端進程或應用程序,并提供對系統(tǒng)服務的訪問。 調用EJB組件的應該稱為EJB客戶端,客戶端可以運行在Web容器中。
4、RMI(Remote Method Invoke)遠程方法調用
RMI協(xié)議能夠讓在某個Java虛擬機上的對象,像調用本地對象一樣調用另一個Java虛擬機中的對象上的方法。它使用了序列化方式在客戶端和服務器端傳送數(shù)據(jù)。RMI是一種被EJB使用的更底層的協(xié)議。(stub/skeleton層提供了客戶程序和服務程序彼此交互的接口)
5、Java IDL(Interface Description Language)/CORBA(Common Object Broker Architecture)Java 接口定義語言/公用對象請求代理程序體系結構
IDL是用來描述軟件組件接口的一種計算機語言。IDL通過一種中立的方式來描述接口,使得在不同平臺上運行的對象和用不同語言編寫的程序可以相互通信交流。
6、JSP(Java Server Pages)
JSP頁面由HTML代碼和嵌入其中的Java代碼所組成。服務器在頁面被客戶端所請求以后對這些Java代碼進行處理,然后將生成的HTML頁面返回給客戶端的瀏覽器。 JSP可以使用Servlet提供的API,一般和JavaBean結合使用,從而將界面表現(xiàn)和業(yè)務邏輯分離。
7、Servlet
Servlet是一種小型的Java程序,它擴展了Web服務器的功能。作為一種服務器端的應用,當被請求時開始執(zhí)行。Servlet提供的功能大多與JSP類似,不過實現(xiàn)的方式不同。JSP通常是大多數(shù)HTML代碼中嵌入少量的Java代碼,而servlets全部由Java寫成并且生成HTML。
8、XML(Extensible Markup Language)可擴展白標記語言
XML是一種用于標記電子文件使其具有結構性的標記語言。它被用來在不同的商務過程中共享數(shù)據(jù)。XML的發(fā)展和Java是相互獨立的,但是它和Java有著相同的目標,即平臺獨立性。通過Java和XML的組合,可以得到一個完美的具有平臺獨立性的解決方案。
9、JMS(Java Message Service)Java 消息服務
JMS是Java的消息服務,JMS的客戶端之間可以通過JMS服務進行異步的消息傳輸。JMS用于和面向消息的中間件相互通信的應用程序接口(API)。它既支持點對點的域,有支持發(fā)布/訂閱(publish/subscribe)類型的域,并且提供對下列類型的支持:經認可的消息傳遞,事務型消息的傳遞,一致性消息和具有持久性的訂閱者支持。 JMS消息系統(tǒng)帶來的好處:1、提供消息靈活性;2、松散耦合;3、異步性。
10、JTA(Java Transaction API)Java 事務 API
在JavaEE應用中,事務是一個不可或缺的組件模型,它保證了用戶操作ACID(即原子、一致、隔離、持久)屬性。對于那些跨數(shù)據(jù)源(例如多個數(shù)據(jù)庫,或者數(shù)據(jù)庫與JMS)的大型應用,則必須使用全局事務JTA。應用系統(tǒng)可以由JTA定義的標準API訪問各種事務監(jiān)控,JTA為JavaEE平臺提供了分布式事務服務,它隔離了事務與底層的資源,實現(xiàn)了透明的事務管理方式。11、JTS(Java Transaction Service)Java 事務服務
JTS是一個組件事務監(jiān)視器。JTS是CORBA OTS事務監(jiān)控的基本實現(xiàn)。JTS規(guī)定了事務管理器的實現(xiàn)方式。JTS事務管理器為應用服務器、資源管理器、獨立的應用以及通信資源管理器提供了事務服務。
12、JavaMail
JavaMail是用于存取郵件服務器的API,它提供了一套郵件服務器的抽象類。不僅支持SMTP服務器,也支持IMAP服務器和POP服務器。
13、JAF(JavaBean Activation Framework)
JavaMail利用JAF來處理MIME編碼的郵件附件。MIME的字節(jié)流可以被轉換成Java對象,或者轉換自Java對象。大多數(shù)應用都可以不需要直接使用JAF。
兩層架構
傳統(tǒng)的客戶服務器系統(tǒng)僅只簡單地基于兩層體系來構建,即客戶端(前臺)和企業(yè)信息系統(tǒng)(后臺),沒有任何中間件,業(yè)務邏輯層與表示層或數(shù)據(jù)層混在一起。這種兩層架構無論從開發(fā)、部署、擴展、維護來說,綜其只有一個特點——成本高。
三層架構
三層架構自上而下將系統(tǒng)分為表示層、邏輯層、持久層。 表示層由處理用戶交互的客戶端組件及其容器所組成; 業(yè)務邏輯層由解決業(yè)務問題的組件組成; 數(shù)據(jù)層由一個或多個數(shù)據(jù)庫組成,并可包含存儲過程。 這種三層架構,在處理客戶端的請求時,使客戶端不用進行復雜的數(shù)據(jù)庫處理;透明地為客戶端執(zhí)行許多工作,如查詢數(shù)據(jù)庫、執(zhí)行業(yè)務規(guī)則和連接現(xiàn)有的應用程序;并且能夠幫助開發(fā)人員創(chuàng)建適用于企業(yè)的大型分布式應用程序。
MVC
在MVC模式中,應用程序被劃分為模型層(Model)、視圖層(View)、控制層(Controller)三部分。MVC模型就是把一個應用程序的開發(fā)按照業(yè)務邏輯、數(shù)據(jù)、視圖進行分離分層并組織代碼。MVC要求把應用的模型按一定的層次規(guī)則抽取出來,將業(yè)務邏輯聚集到一個部件里面,在改進和個性化定制界面及用戶交互的同時,不需要重新編寫業(yè)務邏輯。模型層負責封裝應用的狀態(tài),并實現(xiàn)功能,視圖層負責將內容呈現(xiàn)給用戶,控制層負責控制視圖層發(fā)送的請求以及程序的流程。 Servlet
+JSP
+JavaBean
(MVC)這種模式比較適合開發(fā)復雜的web應用,在這種模式下,Servlet負責處理用戶請求,JSP負責數(shù)據(jù)顯示,JavaBean負責封裝數(shù)據(jù)。
基于JavaEE架構模式下的MVC在這種架構模式下,模型層(Model)定義了數(shù)據(jù)模型和業(yè)務邏輯。為了將數(shù)據(jù)訪問與業(yè)務邏輯分離,降低代碼之間的耦合,提高業(yè)務精度,模型層又具體劃分為了DAO層和業(yè)務層,DAO即Data Access Object,其主要職能是將訪問數(shù)據(jù)庫的代碼封裝起來,讓這些代碼不會在其它層出現(xiàn)或者暴露出來給其它層;業(yè)務層是整個系統(tǒng)最核心也是最具有價值的一層,該層封裝應用程序的業(yè)務邏輯,處理數(shù)據(jù),關注客戶需求,在業(yè)務處理過程中會訪問原始數(shù)據(jù)或產生新數(shù)據(jù),DAO層提供的DAO類能很好地幫助業(yè)務層完成數(shù)據(jù)處理,業(yè)務層本身側重于對客戶需求的理解和業(yè)務規(guī)則的適應,總體說來,DAO層不處理業(yè)務邏輯,只為業(yè)務層提供輔助,完成獲取原始數(shù)據(jù)或持久層數(shù)據(jù)等操作。
JSP:JSP被用來產生Web的動態(tài)內容。這層把應用數(shù)據(jù)以網(wǎng)頁的形式呈現(xiàn)給瀏覽器,然后數(shù)據(jù)按照在JSP中開發(fā)的預定的方式表示出來,這層也可以稱之為布局層。
Servlet:JSP建立在Servlet之上,Servlet是J2EE的重要組成部分。Servlet負責處理用戶請求,Java Web項目的所有配置都寫在了web.xml
配置文件里,當項目運行的時候,web.xml
會將http請求映射給對應的Servlet類。
JavaBean:由一些具有私有屬性的Java類組成,對外提供get和set方法。JavaBean負責數(shù)據(jù),負責處理視圖層和業(yè)務邏輯之間的通信。
Service:業(yè)務處理類,對數(shù)據(jù)進行一些預處理。
DAO:數(shù)據(jù)訪問層,JDBC調用存儲過程,從數(shù)據(jù)庫(DataBase)那里獲取到數(shù)據(jù),再封裝到Model實體類中去。
上述內容就是JavaEE完整體系架構是怎樣的,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
本文名稱:JavaEE完整體系架構是怎樣的
文章源于:http://jinyejixie.com/article26/ggcpcg.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供標簽優(yōu)化、響應式網(wǎng)站、服務器托管、企業(yè)建站、App設計、ChatGPT
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)