Java pojmenování a rozhraní adresářů

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 30. července 2016; kontroly vyžadují 9 úprav .

Java Naming and Directory Interface ( JNDI ) je sada rozhraní Java API organizovaná jako adresářová služba , která umožňuje klientům Java otevírat a zobrazovat data a objekty podle jejich jmen. Jako každé jiné Java API je JNDI jako sada rozhraní nezávislé na základní implementaci. Kromě toho poskytuje implementaci rozhraní poskytovatele služeb  (SPI), která umožňuje spárování adresářových služeb s . Může to být server, soubor nebo databáze [1] .

Koncept JNDI je založen na dvou hlavních definicích: asociace a kontext. Asociace ( anglicky  binding ) je shoda mezi jménem JNDI a objektem. Kontext ( anglicky  context ) je prostředí, ve kterém je uložena množina asociací mezi objekty a názvy.

Architektura

Služby Java RMI  a  Jakarta EE  API využívají k vyhledávání objektů na webu přístupy popsané v JNDI API. API poskytuje:

Část rozhraní SPI  vám umožňuje podporovat téměř jakýkoli typ pojmenování adresářů, včetně:

Vytvoření kontextu

Přístup ke kontextu a práce s JNDI vyžaduje import a interakci s API a třídami z balíčku javax.naming[4] .

import javax.naming.Context ; import javax.naming.InitialContext ; import javax.naming.NamingException ;

main() V nejjednodušším případě je počáteční kontext vytvořen z metody . Typ pojmenování adresáře je určen nastavením proměnných prostředí . Jedním ze způsobů, jak je nastavit, je použít objekt typu Hashtable, který je předán konstruktoru třídy InitialContext:

Hashtable env = new Hashtable (); env . put ( Context . INITIAL_CONTEXT_FACTORY , "com.sun.jndi.fscontext.RefFSContextFactory" ); Context ctx = new InitialContext ( env );

Načtení dříve uloženého objektu z kontextu je možné voláním Context.lookup() objektu kontextu [5] :

Objekt obj = ctx . vyhledávání ( "/com/sampleproject/SampleObject" );

Poznámky

  1. Dokumentace Oracle. Koncepty JNDI . docs.oracle.com . docs.oracle.com. Získáno 5. června 2017. Archivováno z originálu 23. května 2017.
  2. JNDI Naming and Directory Service . java-online.ru Získáno 5. června 2017. Archivováno z originálu 9. června 2017.
  3. Dokumentace Oracle. Přehled JNDI . docs.oracle.com . docs.oracle.com. Získáno 5. června 2017. Archivováno z originálu 24. května 2017.
  4. javax.naming . Java Platform SE 8 API dokumentace . Datum přístupu: 5. června 2017. Archivováno z originálu 17. března 2017.
  5. Příklad pojmenování . Výukový program pro Oracle . Získáno 5. června 2017. Archivováno z originálu 31. května 2017.