1. 程式人生 > >JavaEE核心技術簡介

JavaEE核心技術簡介

JavaEE的13種核心技術簡介:

1、XML

XML是一種簡單靈活的文字格式的可擴充套件標記語言,被設計用來傳輸和儲存資料。XML標籤沒有被預定義。您需要自行定義標籤。XML 被設計為具有自我描述性。 W3C 的推薦標準

2、Servlet

Servlet是Java Servlet的簡稱,稱為小服務程式或服務聯結器,用Java編寫的伺服器端程式,主要功能在於互動式地瀏覽和修改資料,生成動態Web內容。

狹義的Servlet是指Java語言實現的一個介面,廣義的Servlet是指任何實現了這個Servlet介面的類,一般情況下,人們將Servlet理解為後者。Servlet運行於支援Java的應用伺服器中。從原理上講,Servlet可以響應任何型別的請求,但絕大多數情況下Servlet只用來擴充套件基於HTTP協議的Web伺服器。

3、JSP

JSP全名為Java Server Pages,中文名叫java伺服器頁面,其本質是一個簡化的Servlet。JSP將網頁邏輯與網頁設計的顯示分離,支援可重用的基於元件的設計,使基於Web的應用程式的開發變得迅速和容易。 JSP是一種動態頁面技術,它的主要目的是將表示邏輯從Servlet中分離出來。Java Servlet是JSP的技術基礎,而且大型的Web應用程式的開發需要Java Servlet和JSP配合才能完成。

4、JDBC

JDBC是一種用於執行SQL語句的JavaAPI,可以為多種關係資料庫提供統一訪問,它由一組用Java語言編寫的類和介面組成。JDBC提供了一種基準,據此可以構建更高階的工具和介面,使資料庫開發人員能夠編寫資料庫應用程式

。JDBC對資料庫的訪問也具有平臺無關性。

5、JavaMail

JavaMail,提供給開發者處理電子郵件相關的程式設計介面,它提供了一套郵件伺服器的抽象類。不僅支援SMTP伺服器,也支援IMAP伺服器和POP伺服器。JavaMail是可選包,要使用需要從java官網上下載。使用JavaMail的時候需要Javabean Activation Framework的支援,因此你也需要下載JAF。安裝JavaMail只是需要把他們加入到CLASSPATH中去,如果你不想修改CLASSPATH的話,可以直接把他們的jar包直接到移動JAVA_HOME/lib/ext下。這樣JavaMail就安裝好了。

JavaMail包中用於處理電子郵件的核心類是:Session,Message,Address,Authenticator,Transport,Store,Folder等。Session定義了一個基本的郵件會話,它需要從Properties中讀取類似於郵件伺服器,使用者名稱和密碼等資訊。另外實現了JavaMail API的框架有James、Spring Mail。

6、JNDI(Java Naming and Directory Interfaces)Java 的命名和目錄介面

JNDI一種標準的Java命名系統介面,JNDI提供統一的客戶端API,通過不同的訪問提供者介面JNDI服務供應介面(SPI)的實現,由管理者將JNDI API對映為特定的命名服務和目錄系統,使得Java應用程式可以和這些命名服務和目錄服務之間進行互動。目錄服務是命名服務的一種自然擴充套件。兩者之間的關鍵差別是目錄服務中物件不但可以有名稱還可以有屬性(例如,使用者有email地址),而命名服務中物件沒有屬性

JNDI是命名目錄服務的抽象介面集合,為企業級應用提供了統一的標準化連線,使Java能夠無縫地獲取任何可目錄化的企業資訊。在JavaEE體系中,JNDI用來定位各種物件,包括EJB、資料庫驅動、JDBC資料來源及訊息連線等。由於JNDI是獨立於目錄協議的,因此還可以用JNDI訪問各種特定的目錄服務,如LDAP(輕量目錄訪問協議)、NDS(伺服器目錄訪問服務)。

7、EJB(Enterprise JavaBean)

EJB是JavaEE伺服器端元件模型,設計目標與核心應用是部署分散式應用程式。簡單來說就是把已經編寫好的程式(即:類)打包放在伺服器上執行。憑藉java跨平臺的優勢,用EJB技術部署的分散式系統可以不限於特定的平臺。EJB是javaEE的一部分,定義了一個用於開發基於元件的企業多重應用程式的標準。其特點包括網路服務支援和核心開發工具(SDK)。在J2EE裡,EJB稱為Java 企業Bean,是Java的核心程式碼,分別是會話Bean(Session Bean),實體Bean(Entity Bean)和訊息驅動Bean(MessageDriven Bean)。在EJB3.0推出以後,實體Bean被單獨分了出來,形成了新的規範JPA。

8、RMI(Remote Method Invoke)遠端方法呼叫

RMI 指的是遠端方法呼叫。它是一種機制,能夠讓在某個 Java虛擬機器上的物件呼叫另一個 Java 虛擬機器中的物件上的方法。可以用此方法呼叫的任何物件必須實現該遠端介面。呼叫這樣一個物件時,其引數為 "marshalled" 並將其從本地虛擬機發送到遠端虛擬機器(該遠端虛擬機器的引數為 "unmarshalled")上。該方法終止時,將編組來自遠端機的結果並將結果傳送到呼叫方的虛擬機器。如果方法呼叫導致丟擲異常,則該異常將指示給呼叫方。RMI是一種被EJB使用的更底層的協議。(stub/skeleton層提供了客戶程式和服務程式彼此互動的介面)

9、Java IDL(Interface Description Language)/CORBA(CommonObject Broker Architecture)Java 介面定義語言/公用物件請求代理程式體系結構

Java IDL即idltojava編譯器就是一個ORB,可用來在Java語言中定義、實現和訪問CORBA物件。Java IDL支援的是一個瞬間的CORBA物件,即在物件伺服器處理過程中有效。實際上,Java IDL的ORB是一個類庫而已,並不是一個完整的平臺軟體,但它對Java IDL應用系統和其他CORBA應用系統之間提供了很好的底層通訊支援,實現了OMG定義的ORB基本功能。

CORBA(Common Object Request Broker Architecture,公共物件請求代理體系結構,通用物件請求代理體系結構)是由OMG組織制訂的一種標準的面向物件應用程式體系規範。或者說 CORBA體系結構是物件管理組織(OMG)為解決分散式處理環境(DCE)中,硬體和軟體系統的互連而提出的一種解決方案;OMG組織是一個國際性的非盈利組織,其職責是為應用開發提供一個公共框架,制訂工業指南和物件管理規範,加快物件技術的發展。

10、JMS(Java Message Service)Java 訊息服務

JMS即Java訊息服務應用程式介面,是一個Java平臺中關於面向訊息中介軟體(MOM)的API,用於在兩個應用程式之間,或分散式系統中傳送訊息,進行非同步通訊。Java訊息服務是一個與具體平臺無關的API,絕大多數MOM提供商都對JMS提供支援。

JMS 則提供同樣與廠商無關的訪問方法,以訪問訊息收發服務。許多廠商都支援 JMS,包括 IBM 的 MQSeries、BEA的 Weblogic JMS service和 Progress 的 SonicMQ。 JMS 使您能夠通過訊息收發服務(有時稱為訊息中介程式或路由器)從一個 JMS 客戶機向另一個 JMS客戶機發送訊息。訊息是 JMS 中的一種型別物件,由兩部分組成:報頭和訊息主體。報頭由路由資訊以及有關該訊息的元資料組成。訊息主體則攜帶著應用程式的資料或有效負載。根據有效負載的型別來劃分,可以將訊息分為幾種型別,它們分別攜帶:簡單文字(TextMessage)、可序列化的物件 (ObjectMessage)、屬性集合 (MapMessage)、位元組流 (BytesMessage)、原始值流 (StreamMessage),還有無有效負載的訊息 (Message)。

JMS訊息系統帶來的好處:1、提供訊息靈活性;2、鬆散耦合;3、非同步性。

11、JTA(Java Transaction API)Java 事務 API

JTA,即Java Transaction API,JTA允許應用程式執行分散式事務處理——在兩個或多個網路計算機資源上訪問並且更新資料。JDBC驅動程式的JTA支援極大地增強了資料訪問能力。

JTA事務比JDBC事務更強大。一個JTA事務可以有多個參與者,而一個JDBC事務則被限定在一個單一的資料庫連線。下列任一個Java平臺的元件都可以參與到一個JTA事務中:JDBC連線、JDO PersistenceManager 物件、JMS 佇列、JMS 主題、企業JavaBeans(EJB)、一個用J2EEConnector Architecture 規範編譯的資源分配器。

在JavaEE應用中,事務是一個不可或缺的元件模型,它保證了使用者操作ACID(即原子、一致、隔離、持久)屬性。對於那些跨資料來源(例如多個數據庫,或者資料庫與JMS)的大型應用,則必須使用全域性事務JTA。應用系統可以由JTA定義的標準API訪問各種事務監控,JTA為JavaEE平臺提供了分散式事務服務,它隔離了事務與底層的資源,實現了透明的事務管理方式。

12、JTS(Java Transaction Service)Java 事務服務

JTS是一個元件事務監視器。JTS是CORBA OTS事務監控的基本實現。JTS規定了事務管理器的實現方式。JTS事務管理器為應用伺服器、資源管理器、獨立的應用以及通訊資源管理器提供了事務服務。

13、JAF(JavaBean Activation Framework)

JavaMail利用JAF來處理MIME編碼的郵件附件。MIME的位元組流可以被轉換成Java物件,或者轉換自Java物件。大多數應用都可以不需要直接使用JAF。

Mail API 的所有版本都需要 JavaBeans Activation Framework 來支援任意資料塊的輸入及相應處理。功能似乎不多,但目前許多瀏覽器和郵件工具中都能找到這種基本的 MIME 型支援。activation.jar 檔案就是JAF的框架jar包。

對於通過JAF封裝的資料,應用程式通過JAF提供的介面可以完成如下功能:

1、訪問資料來源中的資料.

2、獲知資料來源的資料型別.

3、獲知可對資料進行的各種操作.

4、使用者對資料執行某種操作時,自動建立執行該操作的軟體部件的例項物件.

javaMail API可以利用JAF從某種資料來源中讀取資料和獲知資料的MIME型別,並用這些資料生成MIME訊息中的訊息體和訊息型別


相關推薦

JavaEE核心技術簡介

JavaEE的13種核心技術簡介:1、XML XML是一種簡單靈活的文字格式的可擴充套件標記語言,被設計用來傳輸和儲存資料。XML標籤沒有被預定義。您需要自行定義標籤。XML 被設計為具有自我描述性。是 W3C 的推薦標準2、ServletServlet是Java Servl

JavaEE的13種核心技術

javaee java spring dubbo redis java的大方向就是JavaEE,JavaEE不僅僅是socket編程,具體包括13種核心技術。 JAVAEE的核心API與組件 JAVAEE平臺由一整套服務(Services)、應用程序接口(APIs)和協議構成,它對開發基於

JavaEE的13個核心規範簡介

https://blog.csdn.net/persistencegoing/article/details/84376427   JavaEE的13個規範其實就是JavaEE的13個API文件,是一種比較抽象的標準。 1、JDBC(Java Database Connectivi

大資料WEB階段(十五)JavaEE三大核心技術之過濾器

Filter過濾器 一、Filter 過濾器概述 Filter是JavaEE三大核心技術(Servlet 、 Filter 、 Listener)之一 FIlter作用是攔截對資源的訪問 , 攔截下來後可以控制是否允許通過 , 或者在允許通過前後做

深度學習與計算機視覺核心技術與應用(學習目錄簡介

    無意中看到舉辦的深度學習與計算機視覺的課程培訓,看到培訓的內容,很是感興趣,有種把之前零散學習到的東西進行了一次總結。因此我想根據培訓課程的目錄把我之前的學習的一些內容以及個人經驗進行一次全面的總結,也當做一次複習吧!     深度學習是近十年來人工智

Spring核心技術(一)——IoC容器和Bean簡介

IoC容器和Bean簡介 這章包括了Spring框架對於IoC規則的實現。Ioc也同DI(依賴注入)。而物件是通過建構函式,工廠方法,或者一些Set方法來定義物件之間的依賴的。容器在建立這些Bean物件的時候同時就會注入這些依賴。這個過程是根本上的反轉了,不再

Spring的核心技術(二)---容器簡介

org.springframework.context.ApplicationContext介面代表了Spring的IoC容器,並且它負責例項化、配置和組裝前面提到的Bean物件。這個容器通過 讀取配置元資料來獲得要例項化、配置和組裝的物件的指令。配置元資料被放在XML檔案

Spring的核心技術(三)---Bean簡介

Bean簡介 Spring的IoC容器管理著很多個Bean,這些Bean是通過提供給容器的配置元資料來建立的,例如XML樣式的<bean/>定義。 1. 在容器的Bean定義表示為BeanDefinition物件,它包含了以下元資料: 2. 限定包的類名:通常是

詳細解剖大型H5單頁面應用的核心技術

事件機制 設置 橫豎 模板 phone inline lib 優點 溢出 闡述下項目 Xut.js 開發中一個比較核心的優化技術點,這是一套平臺代碼,並非某一個插件功能或者框架可以直接拿來使用,核心代碼大概是6萬行左右(不包含任何插件) 。這也並非一個開源項目,不能

Java核心技術之基本數據類型

又能 art 資料 string 1.4 get bool 讀取 大數 這篇文章。我們討論一些java的最主要的東西。這些東西我們一般剛剛學java的時候就學過,可是不一定真正明確。正好,我在做一個讀取內存的值,涉及到bit位的值的讀取和寫。那就能夠討論一個

Java核心技術學習筆記-繼承

java 繼承按照我們中文通俗的理解是不需要付出努力,就獲得別人的能力或資產,比如繼承父輩的家產,繼承父輩的表達能力,繼承父輩的外貌等等。在類裏面的繼承,可以理解不需要重新開發代碼,就能復用父類的方法和域。 在繼承關系裏面,可以分為父類和子類,子類繼承父類,那子類就有了跟父類一樣對外的方法

java核心技術-Object hashCode

object hashcode java核心技術 hashCode(散列碼)是由對象導出的一個整型值,散列碼是沒有規律的,如果對象不一樣,其散列碼基本也不會一致。 (String)字符串的散列碼是有內容導出的,兩個相同內容的String,其散列碼是一致的,但是StringBuff

P2P技術簡介

image clas 中間 我們 bit ping ebr restrict 存在 P2P技術簡介 NAT( Network Address Translation)穿越(俗稱打洞)技術 前言: p2p已經存在於我們生活的方方面面;我們通過下載在工具(比如迅

【金陽光測試】基於控件核心技術探討---Android自己主動化系列(2)---2013年5月

進程 實用 版本 信號 監聽 dialog otto 設計 核心技術 第一講分享了下安卓自己主動化一些概況和一些自己主動化框架現狀和技術可以解決什麽樣的問題。這次課就深入到android世界裏面。遨遊、翺翔。深入了解自己主動化測試核心技術。

Docker(一):Docker核心技術預覽

docker開始學習docker了,想寫一篇docker技術介紹的純理論文章,發現以下網站的文檔寫的特別好,就直接引用了,文章轉載自:http://www.infoq.com/cn/DockerDeep http://www.infoq.com/cn/articles/docker-core-technolo

【Java核心技術】類型信息(Class對象 反射 動態代理)

示例 () 分享 不知道 必須 理解 name row 類庫 1 Class對象 理解RTTI在Java中的工作原理,首先需要知道類型信息在運行時是如何表示的,這是由Class對象來完成的,它包含了與類有關的信息。Class對象就是用來創建所有“常規”對象的,Java使用C

SpringMVC核心技術---轉發和重定向

mvc 定向 return span attr pre DDU color redirect @Controller public class Mycontroller { //轉發 @RequestMapping("/adduser") publ

14.SpringMVC核心技術-類型轉換器

att cnblogs code 類型的轉換器 註入 div 出現 type 目標 類型轉換器   在前面的程序中,表單提交的無論是 int 還是 double 類型的請求參數,用於處理該請求 的處理器方法的形參,   均可直接接收到相應類型的相應數據,而非接收到 Stri

Nginx負載均衡與反向代理—《億級流量網站架構核心技術

小時 維護 額外 nat gzip 網站架構 weight 2.7 熱點 當我們的應用單實例不能支撐用戶請求時,此時就需要擴容,從一臺服務器擴容到兩臺、幾十臺、幾百臺。然而,用戶訪問時是通過如http://www.XX.com的方式訪問,在請求時,瀏覽器首先會查詢DNS服務

Java底層四個核心技術

來安 風格 生成 能夠 不同 本質 特定 pil 網絡 今天早起失敗,加上忙碌的一天加班工作,沒按計劃總結Java相關的技術,剛看到下面的文章總結的不錯,轉載一下。 Java有哪四個核心技術?首先,我們要了解一下java核心技術的重要性,它可以幫助我們舉一反三、觸類