命名服务是将名称与对象相关联。这种关联被称为绑定。一组这样的绑定被称为上下文,Jndi上下文可以用来查找,捆绑/解除捆绑,创建或者破坏绑定名称操作在JNDI中,上下文是使用javax.naming.Context 接口来表示的,而这个接口也正是与命名服务进行交互的主要接口。
Context 接口中的每个命名方法都有两种重载的形式:
lookup(String name): 接受一个字符串名称参数,查找绑定远程对象。
lookup(javax.naming.Name): 接受一个结构化的名称,查找绑定远程对象。
初始化上下文
InitialContext 是一个实现了 Context接口的类。使用这个类作为您到命名服务的入口点 。创建一个InitialContext 对象构造器需要采用一组属性,形式为java.util.Hashtable 或其子类之一,比如:
代码范例5
Properties props = new Properties();
props.setProperty(”java.naming.factory.initial”, “org.jnp.interfaces.NamingContextFactory”);
props.setProperty(”java.naming.provider.url”, “localhost:1099″);
InitialContext = new InitialContext(props);
要通过JNDI 进行资源访问,我们必须设置初始化上下文的参数,主要是设置JNDI 驱动的类名(java.naming.factory.initial)和提供命名服务的URL(java.naming.provider.url)。因为Jndi 的实现产品有很多。所以java.naming.factory.initial 的值因提供JNDI 服务器的不同而不同,java.naming.provider.url 的值包括提供命名服务的主机地址和端口号。
分享到:
相关推荐
它使用`org.apache.naming.NamingContext`作为其上下文实现,这使得开发者可以通过简单的JNDI调用来访问配置的资源。 ##### 2.2 Tomcat中的JNDI实现 Tomcat通过`org.apache.naming.ContextBindings`类实现了JNDI中...
在Java代码中,使用InitialContext类来初始化上下文,然后通过lookup方法查找资源: ```java Properties props = new Properties(); props.put(Context.INITIAL_CONTEXT_FACTORY, ...
这个程序可能包括初始化JNDI上下文、尝试查找已知的JNDI名称,以及绑定新的对象到JNDI树的练习。 总的来说,J2EE中的JNDI是连接应用程序与服务资源的关键桥梁,它简化了资源管理,提高了代码的可移植性。在WebLogic...
1. **初始化InitialContext**:使用`new InitialContext()`创建一个初始上下文对象。这一步是开始查找EJB组件的基础。 ```java InitialContext ic = new InitialContext(); ``` 2. **执行查找**:通过`lookup...
JNDI的核心概念包括命名空间、上下文(Context)和查找操作。命名空间是一个组织对象名的层次结构,上下文是命名空间的一个部分,用于存储和管理名称与对象的映射关系。查找操作则是通过指定名称从命名空间中获取...
接着,通过`InitialContext`的构造函数初始化上下文。然后,创建OracleDataSource对象,并设置必要的连接参数,如数据库名、用户名、密码、服务器地址和端口号。最后,调用`ctx.bind()`方法将数据源绑定到JNDI路径...
4. **Servlet上下文初始化参数**:在Servlet应用中,JNDI可以用来存储和检索全局配置信息,如服务器配置或安全设置。 `jndi-1.2.1.jar` 是包含JNDI 1.2.1实现的库文件,它是Java应用程序使用JNDI功能的必要依赖。...
2. 创建初始上下文:这是JNDI查找的第一步,通过`InitialContext`类的构造函数,提供一个环境属性列表,其中包含了获取服务器上下文所需的配置信息。 ```java Properties props = new Properties(); props.put...
- **初始上下文(Initial Context)**:它是进行JNDI操作的起点,通常用于创建上下文环境并初始化JNDI配置。 - **上下文(Context)**:表示JNDI树中的节点,可以包含对象或指向子节点的引用。 - **对象(Object)**...
3. **上下文(Context)**:JNDI通过Context接口来访问命名和目录服务。上下文提供了查找、绑定、重新绑定和删除名称的方法。 4. **查找操作**:使用`lookup()`方法,你可以通过一个名称从命名服务中查找对象。例如,...
配置完成后,应用可以通过JNDI查找,如`Context初始化参数`来获取数据源,这可以避免硬编码数据库连接信息。 **SSH框架整合JNDI:** 1. **Struts:** Struts作为MVC框架处理用户请求,通过Action跳转控制业务流程...
1. **初始化初始上下文**:首先,我们需要创建一个初始上下文(InitialContext)对象,它是所有JNDI操作的起点。这通常通过调用`new InitialContext()`完成。 2. **查找JNDI资源**:接着,使用`lookup()`方法通过...
1. **初始化Naming Context**:首先,你需要创建一个初始上下文(InitialContext),这是所有JNDI操作的起点。这通常通过传递一个配置环境属性的Map来完成,这些属性可能包含服务器URL、用户名、密码等。 ```java ...
1. **Naming Contexts**:命名上下文是JNDI的核心,它代表了一个命名空间,可以包含其他上下文和对象。 2. **Lookup操作**:通过指定的名字在命名上下文中查找对象。 3. **Binding操作**:将对象绑定到命名上下文中...
2. **创建Initial Context**:这是JNDI的第一步,通过`InitialContext()`构造函数初始化上下文。 3. **执行查找操作**:使用`Context.lookup()`方法根据给定的名称查找对象。如果名称没有在当前上下文中找到,JNDI会...
它支持JNDI服务提供商的初始化和管理,使得开发者可以方便地集成和配置不同的JNDI服务提供商。 使用JNDI时,你需要理解以下几个核心概念: - **Naming Context**:命名上下文是JNDI中的基本概念,它是一个命名空间...
1. 创建初始上下文(Initial Context):这是访问JNDI服务的第一步,需要提供适当的环境属性来配置命名服务。 2. 执行查找操作:使用`Context.lookup()`方法,传递要查找的名字。 3. 处理查找结果:查找的结果可能是...
`InitialContext`是`Context`的一个实现,常用于初始化上下文。`NamingEnumeration`用于遍历查找结果。例如,通过设置环境属性`Context.INITIAL_CONTEXT_FACTORY`来指定命名服务的提供商,然后使用`InitialContext`...
- **`InitialContext` 类**:用于初始化上下文环境,创建 `Context` 实例。 - **`Name` 接口**:定义了名称的基本操作。 - **绑定与解绑**:允许将名称与对象关联或取消关联。 - **引用**:用于存储对象的描述...
首先,定义了环境变量`env`,并初始化了一些关键参数: 1. **adminName** 和 **adminPassword**:这是用于访问LDAP服务器的身份验证凭证。 2. **ldapURL**:指定LDAP服务器的地址,格式为`LDAP://IP:端口`。 3. **...