What is the purpose of JNDI?

Answer Posted / rajkumar siripuram

JNDI is the Java Naming and Directory Interface. It's used
to separate the concerns of the application developer and
the application deployer. When you're writing an application
which relies on a database, you shouldn't need to worry
about the user name or password for connecting to that
database. JNDI allows the developer to give a name to a
database, and rely on the deployer to map that name to an
actual instance of the database.

For example, if you're writing code that runs in a Java EE
container, you can write this to get hold of the data source
with JNDI name "Database":


DataSource dataSource = null;
try
{
Context context = new InitialContext();
dataSource = context.lookup("Database");
}
catch (NamingException e)
{
// Couldn't find the data source: give up
}

Note there's nothing here about the database driver, or the
user name, or the password. That is configured inside the
container.

JNDI is not restricted to databases (JDBC); all sorts of
services can be given names. For more details, you should
check out the Sun tutorial on the subject.
link|flag

RAJKUMAR SIRIPURAM

Is This Answer Correct ?    9 Yes 1 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

What do you mean by bean managed transaction?

641


What is stateless and stateful?

610


Differentiate Conversational from Non-conversational interactions?

633


How can a session bean be configured for transactions of bean-managed?

677


What are the differences between ejb 3.0 and ejb 2.0?

610






What is ejb technology?

577


What is an ejb context?

645


Is udp stateless?

662


What is software architecture of ejb?

625


Is soap stateless or stateful?

630


What is ejb context?

626


What are the components of ejb?

647


Name the attributes of javax.ejb.stateful.

648


What does ejb stand for?

705


What is ejb container?

780