Şu satırı dahil ederiz
import javax.naming.Context;
import javax.naming.InitialContext;
Açıklaması şöyleJava Naming and Directory Interface (JNDI) is a Java API that allows clients to discover and look up data and objects via a name. These objects can be stored in different naming or directory services, such as Remote Method Invocation (RMI), Common Object Request Broker Architecture (CORBA), Lightweight Directory Access Protocol (LDAP), or Domain Name Service (DNS).constructor
In other words, JNDI is a simple Java API (such as 'InitialContext.lookup(String name)') that takes just one string parameter, ...
Şöyle yaparız.
Context ctx = new InitialContext();
createSubcontext metoduŞöyle yaparız.
Context ic = new InitialContext();
ic.createSubcontext("java:");
ic.createSubcontext("java:comp");
ic.createSubcontext("java:comp/env");
ic.createSubcontext("java:comp/env/jdbc");
ic.createSubcontext("java:comp/env/jdbc/multiDS");
lookup metoduAçıklaması şöyle.
When you get the datasource through a JNDI lookup it is a shared resource configured in your container. And it's that container's job to manage the lifecycle of the datasource.Object döndüğü için istenilen tipe cast etmek gerekir.
java:com/env Nedir ?
Aynı JVM içinde çalışan container'a erişmek için kullanıılır. Açıklaması şöyle
It's an in-memory global hashtable where you can store global variables by name.Örnek
Şöyle yaparız
Context envContext = (Context)initContext.lookup("java:comp/env");
Rastgelen Nesne
ÖrnekŞöyle yaparız.
new InitialContext().lookup("rmi://127.0.0.1:1097/Object");
DataSource
"java:comp/env/jdbc" + DataSource ismi şeklindedirÖrnek
Şöyle yaparız.
Şöyle yaparız.
Şöyle yaparız.
DataSource ds = null;
try {
ds = (DataSource) ctx.lookup("java:/comp/env/jdbc/project");
} catch (NamingException e) {
e.printStackTrace();
}
ÖrnekŞöyle yaparız.
Connection con = null;
try {
InitialContext context = new InitialContext();
DataSource ds = (DataSource) context.lookup("java:comp/env/jdbc/TEST"
con = ds.getConnection();
} catch (SQLException e) {
...
}
ÖrnekŞöyle yaparız
InitialContext initialContext = new InitialContext();
DataSource dataSource = (DataSource) initialContext.lookup("java:comp/env/jdbc/myDS");
Hiç yorum yok:
Yorum Gönder