<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Java_Naming_and_Directory_Interface</id>
	<title>Java Naming and Directory Interface - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Java_Naming_and_Directory_Interface"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Java_Naming_and_Directory_Interface&amp;action=history"/>
	<updated>2026-05-17T20:53:07Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Java_Naming_and_Directory_Interface&amp;diff=239245&amp;oldid=prev</id>
		<title>imported&gt;SchlurcherBot: Bot: http → https</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Java_Naming_and_Directory_Interface&amp;diff=239245&amp;oldid=prev"/>
		<updated>2026-01-03T20:01:23Z</updated>

		<summary type="html">&lt;p&gt;Bot: http → https&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Java Naming and Directory Interface&amp;#039;&amp;#039;&amp;#039; (&amp;#039;&amp;#039;&amp;#039;JNDI&amp;#039;&amp;#039;&amp;#039;) ist eine [[Programmierschnittstelle]] (API) innerhalb der [[Programmiersprache]] [[Java (Programmiersprache)|Java]] für [[Namensdienst]]e und [[Verzeichnisdienst]]e. Mit Hilfe dieser Schnittstelle können Daten und Objektreferenzen anhand eines Namens abgelegt und von Nutzern der Schnittstelle abgerufen werden.&lt;br /&gt;
&lt;br /&gt;
Die Schnittstelle ist dabei unabhängig von der tatsächlichen [[Implementierung]]. Vielmehr ist JNDI ein sogenanntes [[Service Provider Interface]] (SPI), das Herstellern erlaubt, eigene Lösungen in dieses Framework einzubinden.&lt;br /&gt;
&lt;br /&gt;
In der Praxis wird JNDI vor allem zum Auffinden von Datenbanken und Registrierung verteilter Objekte in einem Netzwerk und Aufruf über [[Remote Method Invocation]] (RMI) verwendet.&lt;br /&gt;
&lt;br /&gt;
Die API enthält:&lt;br /&gt;
* einen Mechanismus zur Bindung eines Objekts an einen Namen&lt;br /&gt;
* Methoden für den Abruf von Informationen anhand eines Namens&lt;br /&gt;
* ein Ereigniskonzept, über das Clients über Änderungen informiert werden&lt;br /&gt;
* spezielle Erweiterungen für [[Lightweight Directory Access Protocol|LDAP]]-Funktionalitäten&lt;br /&gt;
&lt;br /&gt;
JNDI erlaubt die Unterstützung praktisch aller Arten von Namens- und Verzeichnisdiensten, insbesondere von:&lt;br /&gt;
* [[Lightweight Directory Access Protocol]] (LDAP)&lt;br /&gt;
* [[Domain Name System]] (DNS)&lt;br /&gt;
* [[Network Information Service]] (NIS)&lt;br /&gt;
* [[Common Object Request Broker Architecture]] (CORBA) Namensdienst&lt;br /&gt;
* [[Dateisystem]]&lt;br /&gt;
&lt;br /&gt;
== JNDI Lookup ==&lt;br /&gt;
&amp;#039;&amp;#039;Lookup&amp;#039;&amp;#039; ({{enS}} für &amp;#039;&amp;#039;Nachschlagen&amp;#039;&amp;#039;) ist der Vorgang, mit dem die benannten Objekte ermittelt werden.&lt;br /&gt;
&lt;br /&gt;
In JNDI werden die Namen hierarchisch angeordnet. Namen sind üblicherweise [[Zeichenkette|Strings]] wie „com.mydomain.MyBean“, können aber auch beliebige [[Objekt (Programmierung)|Objekte]] sein, die die [[Schnittstelle (Objektorientierung)|Schnittstelle]] &amp;#039;&amp;#039;javax.naming.Name&amp;#039;&amp;#039; implementieren. Im Namens- bzw. Verzeichnisdienst ist für jeden Namen entweder das ihm zugeordnete Objekt selbst gespeichert oder eine JNDI-Referenz auf das zugeordnete Objekt. Die Programmierschnittstelle von JNDI („JNDI API“) definiert, wo nach dem Objekt zu suchen ist. Der initiale Kontext ist dafür üblicherweise der Startpunkt.&lt;br /&gt;
&lt;br /&gt;
Im einfachsten Fall genügt ein initialer Kontext, um nach einem Namen zu suchen:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
Hashtable args = new Hashtable();&lt;br /&gt;
&lt;br /&gt;
// zunächst muss die Kontext-Factory und somit die&lt;br /&gt;
// Implementierung des JNDI-Providers definiert werden:&lt;br /&gt;
args.put(Context.INITIAL_CONTEXT_FACTORY, &amp;quot;com.jndiprovider.TheirContextFactory&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
// dann die URL, die definiert wo die Daten zu finden sind:&lt;br /&gt;
args.put(Context.PROVIDER_URL, &amp;quot;jndiprovider-database&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
// damit bekommt man im einfachsten Fall den initialen Kontext:&lt;br /&gt;
Context myCurrentContext = new InitialContext(args);&lt;br /&gt;
&lt;br /&gt;
// mit Hilfe dieses Kontextes kann man dann Objekte,&lt;br /&gt;
// die zuvor an den Kontext gebunden wurden, finden:&lt;br /&gt;
Object reference = myCurrentContext.lookup(&amp;quot;com.mydomain.MyBean&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[Spring (Framework)]] – deklarative Verwendung von JNDI&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [https://www.oracle.com/technetwork/java/index-jsp-137536.html Offizielle Homepage zum Thema.] [[Oracle]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Java-Programmierschnittstelle]]&lt;/div&gt;</summary>
		<author><name>imported&gt;SchlurcherBot</name></author>
	</entry>
</feed>