Overview of JNDI and Architecture

JNDI is an API that provides naming and directory functionality to applications written in Java Programming Language.

Architecture:

The JNDI consists of an API and service provider Interface(SPI).
Java applications use the JNDI API to access a variety of naming and directory services. The SPI enables a variety of naming and directory services to be plugged in transparantly, there by allowing the Java application using the JNDI API to access their services.

1) Java Application
2) JNDI API
3) Naming Manager
4) JDNI SPI(LDAP,DNS,NIS,NDS,RMI,CORBA)

The JDK includes service providers for the following  naming/directory services:

-LDAP
-Common Object Request Broken Architecture (CORBA)
- RMI - ( Remote Method Invocation )
- DNS ( Domain Naming Service )



Source : http://docs.oracle.com/javase/tutorial/jndi/overview/index.html

Analytics