国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Apache目錄服務器中存儲Java對象

2019-11-18 10:49:06
字體:
來源:轉載
供稿:網友

    Apache 目錄服務器是眾多的 Internet 協議中的一個開放源碼的、基于 java 的實現。ApacheDS 的核心是目錄服務,可以保存數據,并對不同類型的數據進行搜索操作。協議的實現在目錄服務器頂層工作,提供與數據存儲、搜索和檢索有關的 Internet 服務。

    ApacheDS 最重要的特性可能是利用不同協議公開目錄服務的能力。這意味著可以把應用程序的數據(包括運行時的 Java 對象)保存在 ApacheDS 中,而不同的客戶機可以使用不同的協議來利用數據。由 ApacheDS 實現的最重要的協議是輕量級目錄訪問協議(LDAP)。ApacheDS 充當 LDAP 服務器,偵聽請求,與內部核心目錄服務協調,響應 LDAP 請求。

    在這個兩部分的系列中,我將介紹核心的 ApacheDS 架構,并介紹在 ApacheDS 中保存運行時 Java 對象的全部步驟。因為我對 ApacheDS 的關注幾乎全在它作為 LDAP 服務器實現上,所以本系列的第 1 部分主要介紹 LDAP 功能和術語。但在進入這部分之前,我要介紹 ApacheDS 模塊化的可擴展架構,并解釋如何用它把新的協議實現和 Internet 服務插入 ApacheDS.對 ApacheDS 核心目錄服務工作方式的理解,有助于后面理解它提供 LDAP 功能的方式。

    要跟上這篇文章的討論,需要 下載并安裝 ApacheDS 和 JXPlorer.可能還要下載 完整源代碼 供文章使用。

    ApacheDS 中的目錄服務

    目錄服務 是保存和組織數據的應用程序。目錄服務處理不需要頻繁更新的數據,例如系統用戶的個人數據(例如姓名、地址、電話號碼)或者車間的生產能力(例如安裝的設備的數量、型號和生產能力)。在本系列的第 2 部分中,將介紹一個整合了這兩種類型數據的示例應用程序。現在,我把重點放在 ApacheDS 提供目錄服務的方式上。

    ApacheDS 實現 JNDI

    在圖 1 中可以看到,ApacheDS 為自己的核心目錄服務實現了 Java 名稱和目錄接口(JNDI)包裝器。JNDI 是 Java 接口,定義了執行目錄操作的方法,例如在目錄中保存數據和搜索保存的數據。JNDI 是 Java 2 企業版(J2EE)和 Java 2 標準版(J2SE)的組成部分。其中 J2SE 只包含客戶端 JNDI 支持,而 J2EE 容器通常包含服務器端 JNDI 實現。J2EE 容器可以通過 ApacheDS 的 JNDI 包裝器利用它的目錄服務,如圖 1 所示:

    圖 1. ApacheDS 在 J2EE 容器內工作

Apache目錄服務器中存儲Java對象(圖一)

    JNDI 中的接口集提供了目錄服務的抽象。JNDI 實現提供了與目錄服務對話的實際邏輯(例如,Java 平臺自帶了針對 LDAP 的 JNDI 實現)。只要擁有針對這一類型的 JNDI 實現,您就可以用 JNDI 與任何類型的目錄服務對話。假如想在基于 Java 的客戶機應用程序中使用 JNDI,就需要 JNDI 的客戶端實現??蛻舳?JNDI 實現提供的類,實現的是進行目錄操作請求的 JNDI.

    ApacheDS 實現服務器端 JNDI.這意味著它包含的類,實現的是對目錄操作請求進行響應的 JNDI 接口。正如前面指出的(如 圖 1 所示),J2EE 容器可以通過 ApacheDS 的 JNDI 包裝器利用它的目錄服務。

    可插入的協議支持

    圖 1 只顯示了 ApacheDS 的一個使用模型。ApacheDS 的用途不僅僅是嵌在 J2EE 容器內作為目錄服務??梢杂?ApacheDS 實現任何需要后端目錄服務的協議。甚至可以用它同時為各種類型的協議服務;例如,當前的 ApacheDS 實現就同時實現了 LDAP 和 Kerberos.而且,ApacheDS 中支持的協議的列表仍在增長。

    ApacheDS 擁有靈活的可擴展的架構,因此可以實現新的協議。在圖 2 中可以看到 ApacheDS 架構的模型,它工作在 圖 1 所示的 JNDI 包裝器之上:

    圖 2. ApacheDS 靈活的可擴展的架構

Apache目錄服務器中存儲Java對象(圖二)

    可以看到,ApacheDS 使用一套叫做多用途網絡應用程序接口(MINA)的接口。MINA 支持把新的協議實現插入 ApacheDS.在介紹這些內容之前,我要解釋一下 MINA 的工作方式。

    MINA 如何工作

    MINA 中的接口包含的方法可以生成特定協議的工廠對象。這些工廠對象提供了把新協議實現插入 ApacheDS 的手段。協議實現負責實現 MINA 接口,ApacheDS 框架依靠 MINA 包含的方法與協議實現對話。



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 天气| 吕梁市| 华亭县| 恭城| 潮州市| 上杭县| 昌江| 含山县| 深水埗区| 龙江县| 合川市| 阿城市| 雷州市| 郯城县| 钟祥市| 通许县| 江孜县| 宜章县| 肇源县| 托克逊县| 安塞县| 沧州市| 博湖县| 图们市| 凉城县| 靖边县| 和政县| 蕉岭县| 保山市| 阜平县| 禹城市| 江口县| 右玉县| 丹凤县| 青海省| 丘北县| 东乡县| 柘城县| 阳高县| 阳春市| 通江县|