亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

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

JNDI設計內幕

2019-11-18 12:30:57
字體:
來源:轉載
供稿:網友

  1 將接口分為Context 和 DirContext
  JNDI有兩個核心接口Context和DirContext,Context中包含了基本的名字操作,而DirContext則將這些操作擴展到目錄服務。將這些操作分為兩個包一方面為了模塊化,另一方面也可以使服務減少不必要的開銷。名字是計算服務中的一個基本功能,使用基本的名字服務就可以獲得文件系統、電子表格、日歷服務等功能;DirContext 對Context進行了擴展,提供了基本的目錄服務操作,對名字對象屬性的維護、基于屬性的名字查找等等。
  2 將JNDI 分成多個功能包
  JNDI 分為兩個客戶端包(javax.naming,javax.naming.Directory) 和一個服務端包 (javax.naming.spi)。這樣做也同樣是為了減少應用程序不必要的開銷,使得應用程序只需要包括所必須的包。
  3 將客戶端API 和 服務端的API 分開
  JNDI 將客戶端接口與服務提供商需要的接口分開為不同的包。比如,客戶端程序只需要使用javax.naming包中提供的類,而服務提供商可能需要javax.naming和javax.naming.spi兩中包。這樣分開可以使客戶和服務器端只專注于與自身有關的類信息。
  4 上下文列表的多種方法
  一般來說有兩種進行上下文列表的應用:上下文瀏覽應用和對上下文中的對象進行實際操作的應用。
  上下文瀏覽應用一般只需要顯示上下文中包含內容的名字,或者再獲取一些諸如對象的類型之類的信息。這種類型的應用一般都是交互式的,可以答應用戶在列舉的上下文列表中選擇一些進行進一步的顯示。
  另外有一些應用需要對上下文中的對象進行實際的操作,比如,一個備份程序需要對目錄中所有文件的狀態進行操作,或者某打印機治理員可能需要對大樓中的所有打印機進行復位。為了進行這樣的操作,程序需要獲取上下文中的實際對象。
  對于這樣兩種類型的應用,Context接口提供了兩種上下文列表方法list()和listBindings()。其中list()只返回一系列名字/類映射,而listBindings() 則返回名字、類和對象本身。顯然list()用于上下文瀏覽應用而listBindings()用于那些需要對對象進行實際操作的應用。
  5 對聯合的支持
  聯合是JNDI的一個基本概念,在客戶端接口中可以支持跨越多個名字空間的名字,調用名字接口的程序不需要知道細節問題,只需要指定有關的名字,有關在幾個名字系統中如何解析復合名字的問題留給服務提供商來解決,與客戶無關。
  6 DirContext 與 DirObject
  對于目錄服務的實現來說,假如不用擴展Context的DirContext接口,也可以使用一個單獨的包含了所有目錄相關方法的接口如DirObject,這樣的話假如應用只使用目錄服務就可以只包括DirObject,而假如名字服務和目錄服務都使用,則可以包括Context和DirObject。這樣當然條理比較清楚,但是對于某些混合操作,比如一些對目錄和名字都有效的操作就不太方便了,所以JNDI采用了DirContext而不是DirObject。
  7 Schema的支持
  DirContext接口包含對schema的支持,例如,客戶可以通過DirContext對象獲得指向該DirContext實例的schema的定義空間的schema對象,或者獲取該schema對象的類定義。Attribute類還更進一步地支持獲取屬性類型信息、屬性定義等的方法。服務提供商既可以動態地返回這些schema信息,也可以靜態地事先預備好有關的schema信息。
  8 Context 和 DirContext
  接口中的方法重載 在Context和DirContext接口中的每個接受Name參數的方法都有一個接受字符串參數的同名方法。 設計以字符串為參數的方法的原因是由于有很多應用只通過對象的名字來訪問這些對象,對于這些應用來說,直接使用名字來訪問這些方法當然是最直觀的。
  而設計以Name類對象為參數的方法的動機,也是由于有不少對名字進行維護的應用并不關系名字的字面表達,所以需要以Name對象作為參數。 在JNDI中這兩種形式的方法都可以調用,以方便各種不同的應用。
  9 引用
  JNDI包容了多種使用目錄來定位對象的方法,例如,一些應用直接將對象自身綁定在目錄中;一些應用可能動態地產生目錄樹,當應用退出時就刪去該樹;另外一些應用可能只是將指向對象的URL存貯在名字空間里;還有一些系統可能將一些引用信息綁定到樹中,當使用時再用這些信息來訪問實際的對象。
  針對這些不同的方式,JNDI定義了一個Reference類來為應用信息的表達提供一種統一的方式。Reference類包含了諸如地址、類型信息等用于訪問具體對象的信息。為了能將對象的引用綁定到目錄樹中,該對象的類必須實現Referenceable接口,其中包含了方法 getReference() 。 Serializable接口與Referenceable接口有頗多相似之處,不同在于可引用的對象只包含一些用于創建實際對象的信息而Serializable會包含更多的甚至不適合存儲在目錄結構中的信息。
  10 引用到實際對象的自動定位 對于作為引用綁定在目錄樹中的對象,JNDI SPI 指定針對引用創建實際的對象。因此,在程序中只需要認為用lookup()方法返回的對象就是實際對象,而不用在調用什么方法來將引用轉換為實際對象了,所有的工作都由JNDI內部完成了。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲一区二区福利| 97国产精品人人爽人人做| 一级做a爰片久久毛片美女图片| 精品久久久香蕉免费精品视频| 欧美日韩精品在线观看| 亚洲网站视频福利| 91综合免费在线| 亚洲第一视频网| 中文字幕视频一区二区在线有码| 精品视频9999| 国产日产欧美精品| 亚洲高清一二三区| 欧美一级电影久久| 成人一区二区电影| 久久久久久高潮国产精品视| 亚洲高清久久网| 国产91色在线播放| 欧美丰满少妇xxxx| 欧美日韩一区二区三区在线免费观看| 国产精品视频网| 中文字幕一区二区三区电影| 久久亚洲国产成人| 久久人人爽人人爽爽久久| 亚洲免费成人av电影| 国产成人一区二区三区小说| 日韩二区三区在线| 日韩精品中文在线观看| 亚洲国产精品免费| 国产精品无码专区在线观看| 亚洲综合第一页| 全色精品综合影院| 久久久国产精品视频| 国产精品亚洲一区二区三区| 欧美一二三视频| 亚洲国产日韩欧美在线动漫| 久久久精品电影| 国产精品久久久av久久久| 欧美另类交人妖| 国产成人精品视频在线| 日韩欧美国产成人| 97在线观看视频国产| 亚洲理论电影网| 国产91精品久久久久久久| 成人黄色av网站| 国产激情视频一区| 亚洲综合中文字幕在线| 中文字幕欧美在线| 亚洲成色777777在线观看影院| 深夜福利亚洲导航| 成人精品久久一区二区三区| 欧美日韩国产综合视频在线观看中文| 欧洲一区二区视频| 91久久夜色精品国产网站| 岛国精品视频在线播放| 日韩国产精品亚洲а∨天堂免| 欧美精品videosex极品1| 午夜精品蜜臀一区二区三区免费| 国产欧美一区二区三区久久人妖| 亚洲成年网站在线观看| 日韩欧美视频一区二区三区| 97精品视频在线| 久久中文字幕在线| 一区二区日韩精品| 精品亚洲夜色av98在线观看| 欧美一区二区三区图| 91精品中国老女人| 亚洲美女动态图120秒| 91系列在线播放| 欧美亚洲伦理www| 亚洲一区二区三区777| 色香阁99久久精品久久久| 亚洲亚裔videos黑人hd| 色噜噜狠狠色综合网图区| 国产精品va在线播放我和闺蜜| www.99久久热国产日韩欧美.com| 黑人精品xxx一区| 欧洲精品毛片网站| 精品美女久久久久久免费| 欧美大肥婆大肥bbbbb| 最近免费中文字幕视频2019| 欧美激情18p| 精品国产老师黑色丝袜高跟鞋| 亚洲乱码av中文一区二区| 久久精品成人欧美大片古装| 奇米成人av国产一区二区三区| 国产精品27p| 国模精品一区二区三区色天香| 亚洲久久久久久久久久| 欧美国产日产韩国视频| 亚洲精品视频二区| 欧美一级黑人aaaaaaa做受| 91在线观看免费高清| 亚洲综合日韩中文字幕v在线| 国产日韩在线亚洲字幕中文| 欧美在线中文字幕| 在线精品视频视频中文字幕| 欧美日韩免费看| 国产精品视频yy9099| 欧美成人精品在线| 欧美孕妇孕交黑巨大网站| 91精品视频大全| 奇米四色中文综合久久| 日韩国产在线播放| 日韩天堂在线视频| 国产精品美女主播在线观看纯欲| 久久影院资源网| 亚洲国产99精品国自产| 久久99青青精品免费观看| 欧美在线视频导航| 成人精品aaaa网站| 国产午夜精品全部视频播放| 人体精品一二三区| 国外成人性视频| 欧美性xxxxxxxxx| 久久久久久久成人| 国产美女久久精品| 高清在线视频日韩欧美| 欧美电影免费播放| 国产一区二区视频在线观看| 亚洲高清一二三区| 亚洲免费精彩视频| 欧美精品videosex极品1| 91香蕉嫩草神马影院在线观看| 国产91露脸中文字幕在线| 中文字幕亚洲综合久久筱田步美| 亚洲欧美日韩国产成人| 欧美黄色小视频| 国产精品久久久久久一区二区| 国产精品毛片a∨一区二区三区|国| 伊人久久大香线蕉av一区二区| www.日韩系列| 久久精品国产96久久久香蕉| 一区二区亚洲精品国产| 久精品免费视频| 欧美激情精品久久久久久黑人| 一区二区三区亚洲| 国产综合在线看| 日韩av在线一区| 亚洲乱码一区av黑人高潮| 欧美日韩激情美女| 欧美成人四级hd版| 精品香蕉一区二区三区| 中文字幕视频在线免费欧美日韩综合在线看| 欧美激情一区二区三区成人| 7m精品福利视频导航| 久久免费高清视频| 丝袜美腿亚洲一区二区| www.亚洲人.com| 国产欧美一区二区三区在线| 日韩av黄色在线观看| 国产亚洲欧美日韩精品| 91久久国产精品91久久性色| 精品视频在线导航| 欧美极品在线播放| 日韩黄在线观看| 亚洲国产免费av| 亚洲一二在线观看| 精品久久香蕉国产线看观看gif| 热久久视久久精品18亚洲精品| 亚洲精品国产精品国自产在线| 久久这里有精品| 国产精品丝袜久久久久久不卡| 欧美成人小视频| 亚洲一区二区三区久久|