- 所有已实现的接口:
-
Context
- 直接已知的子类:
-
InitialDirContext
所有的命名操作都是相对于一个上下文的。初始上下文实现了Context接口,并提供了解析名称的起始点。
当构造初始上下文时,它的环境会根据构造函数中传递的环境参数和任何应用程序资源文件中定义的属性进行初始化。
JNDI通过合并以下两个来源的值来确定每个属性的值,顺序如下:
- 来自构造函数的环境参数和系统属性的属性的第一次出现。
- 应用程序资源文件(
jndi.properties
)。
Context
),所有的值都会被连接成一个以冒号分隔的列表。对于其他属性,只使用找到的第一个值。
初始上下文的实现在运行时确定。默认策略使用环境属性"java.naming.factory.initial
",其中包含初始上下文工厂的类名。当解析URL字符串时,会有一个例外情况,如下所述。
当将URL字符串(形式为scheme_id:rest_of_name的字符串)作为名称参数传递给任何方法时,会定位并使用处理该方案的URL上下文工厂来解析URL。如果找不到这样的工厂,则使用由"java.naming.factory.initial"
指定的初始上下文。类似地,当将第一个组件为URL字符串的CompositeName
对象作为名称参数传递给任何方法时,会定位并使用用于解析第一个名称组件的URL上下文工厂。请参阅NamingManager.getURLContext()
以了解如何定位URL上下文工厂。
可以通过调用NamingManager.setInitialContextFactoryBuilder()
来覆盖定位初始上下文和URL上下文工厂的默认策略。
当无法实例化初始上下文时,会抛出NoInitialContextException。这个异常可能在与InitialContext的任何交互中抛出,不仅在构造InitialContext时。例如,初始上下文的实现可能在实际调用它的方法时才懒惰地检索上下文。应用程序不应该依赖于何时确定初始上下文的存在。
当环境属性"java.naming.factory.initial"非空时,InitialContext构造函数将尝试创建其中指定的初始上下文。在那时,如果遇到问题,初始上下文工厂可能会抛出异常。但是,当验证并指示初始上下文的使用者任何环境属性或连接相关问题时,这是提供程序实现相关的。它可以懒惰地这样做--延迟到在上下文上执行操作时,或者急切地,在构造上下文时。
InitialContext实例不会针对多个线程的并发访问进行同步。每个操作不同InitialContext实例的线程不需要同步。需要同时访问单个InitialContext实例的线程应该在它们之间同步并提供必要的锁定。
- 自从:
- 1.3, JNDI 1.1
- 参见:
-
Field Summary
Modifier and TypeFieldDescriptionprotected Context
调用NamingManager.getInitialContext()的结果的字段。protected boolean
表示是否通过调用NamingManager.getInitialContext()获取了初始上下文的字段。与此InitialContext关联的环境。Fields declared in interface javax.naming.Context
APPLET, AUTHORITATIVE, BATCHSIZE, DNS_URL, INITIAL_CONTEXT_FACTORY, LANGUAGE, OBJECT_FACTORIES, PROVIDER_URL, REFERRAL, SECURITY_AUTHENTICATION, SECURITY_CREDENTIALS, SECURITY_PRINCIPAL, SECURITY_PROTOCOL, STATE_FACTORIES, URL_PKG_PREFIXES
-
Constructor Summary
ModifierConstructorDescription构造一个初始上下文。protected
InitialContext
(boolean lazy) 构造一个初始上下文,并提供不初始化的选项。InitialContext
(Hashtable<?, ?> environment) 使用提供的环境构造一个初始上下文。 -
Method Summary
Modifier and TypeMethodDescriptionaddToEnvironment
(String propName, Object propVal) 向此上下文的环境添加新的环境属性。void
将名称绑定到对象。void
将名称绑定到对象。void
close()
关闭此上下文。composeName
(String name, String prefix) 将此上下文的名称与相对于此上下文的名称组合。composeName
(Name name, Name prefix) 将此上下文的名称与相对于此上下文的名称组合。createSubcontext
(String name) 创建并绑定一个新的上下文。createSubcontext
(Name name) 创建并绑定一个新的上下文。void
destroySubcontext
(String name) 销毁命名的上下文并将其从命名空间中删除。void
destroySubcontext
(Name name) 销毁命名的上下文并将其从命名空间中删除。static <T> T
检索命名对象的静态方法。static <T> T
检索命名对象的静态方法。protected Context
通过调用NamingManager.getInitialContext()
检索初始上下文并将其缓存在defaultInitCtx中。Hashtable
<?, ?> 检索此上下文的有效环境。在其自己的命名空间中检索此上下文的完整名称。getNameParser
(String name) 检索与命名上下文关联的解析器。getNameParser
(Name name) 检索与命名上下文关联的解析器。protected Context
getURLOrDefaultInitCtx
(String name) 检索用于解析字符串名称name
的上下文。protected Context
getURLOrDefaultInitCtx
(Name name) 检索用于解析name
的上下文。protected void
使用提供的环境初始化初始上下文。枚举命名上下文中绑定的名称,以及绑定到它们的对象的类名。枚举命名上下文中绑定的名称,以及绑定到它们的对象的类名。listBindings
(String name) 枚举命名上下文中绑定的名称,以及绑定到它们的对象。listBindings
(Name name) 枚举命名上下文中绑定的名称,以及绑定到它们的对象。检索命名对象。检索命名对象。lookupLink
(String name) 检索命名对象,跟随链接,但不包括名称的终端原子组件。lookupLink
(Name name) 检索命名对象,跟随链接,但不包括名称的终端原子组件。void
将名称绑定到对象,覆盖任何现有绑定。void
将名称绑定到对象,覆盖任何现有绑定。removeFromEnvironment
(String propName) 从此上下文的环境中删除一个环境属性。void
将新名称绑定到绑定到旧名称的对象,并解除旧名称的绑定。void
将新名称绑定到绑定到旧名称的对象,并解除旧名称的绑定。void
解绑命名对象。void
解绑命名对象。
-
Field Details
-
myProps
与此InitialContext关联的环境。它初始化为null,并且会在接受环境的构造函数或init()
方法更新。- 参见:
-
defaultInitCtx
调用NamingManager.getInitialContext()的结果的字段。它是由getDefaultInitCtx()在第一次调用getDefaultInitCtx()时设置的。后续调用getDefaultInitCtx()将返回defaultInitCtx的值。- 参见:
-
gotDefault
protected boolean gotDefault表示是否通过调用NamingManager.getInitialContext()获取了初始上下文的字段。如果为true,则其结果在defaultInitCtx
中。
-
-
Constructor Details
-
InitialContext
构造一个初始上下文,并提供不初始化的选项。当在调用InitialContext
构造函数时环境参数的值尚未知晓时,可以由子类中的构造函数使用。子类的构造函数将调用此构造函数,计算环境的值,然后在返回之前调用init()
。- 参数:
-
lazy
- true表示不初始化初始上下文;false等同于调用new InitialContext()
- 抛出:
-
NamingException
- 如果遇到命名异常 - 自从:
- 1.3
- 参见:
-
InitialContext
构造一个初始上下文。未提供任何环境属性。等同于new InitialContext(null)
。- 抛出:
-
NamingException
- 如果遇到命名异常 - 参见:
-
InitialContext
使用提供的环境构造一个初始上下文。环境属性在类描述中讨论。此构造函数不会修改
environment
或保存对其的引用,但可能会保存一个克隆。调用者不应在将其传递给构造函数后修改environment
中的可变键和值。- 参数:
-
environment
- 用于创建初始上下文的环境。Null表示空环境。 - 抛出:
-
NamingException
- 如果遇到命名异常
-
-
Method Details
-
init
使用提供的环境初始化初始上下文。环境属性在类描述中讨论。此方法将修改
environment
并保存对其的引用。调用者可能不再修改它。- 参数:
-
environment
- 用于创建初始上下文的环境。Null表示空环境。 - 抛出:
-
NamingException
- 如果遇到命名异常 - 自1.3起:
- 1.3
- 参见:
-
doLookup
通过调用NamingManager.getInitialContext()
检索命名对象的静态方法,并将其缓存在defaultInitCtx中。设置gotDefault
以便我们知道以前已尝试过这样做。- 类型参数:
-
T
- 返回对象的类型 - 参数:
-
name
- 要查找的对象的名称 - 返回:
-
绑定到
name
的对象 - 抛出:
-
NamingException
- 如果遇到命名异常 - 自1.6起:
- 1.6
- 参见:
-
doLookup
通过调用NamingManager.getInitialContext()
检索命名对象的静态方法。这是等效于调用的快捷方法:InitialContext ic = new InitialContext(); Object obj = ic.lookup();
如果
name
为空,则返回此上下文的新实例(表示与此上下文相同的命名上下文,但其环境可以独立修改并且可以同时访问)。- 类型参数:
-
T
- 返回对象的类型 - 参数:
-
name
- 要查找的对象的名称 - 返回:
-
绑定到
name
的对象 - 抛出:
-
NamingException
- 如果遇到命名异常 - 自1.6起:
- 1.6
-
getDefaultInitCtx
通过调用NamingManager.getInitialContext()
检索初始上下文并将其缓存在defaultInitCtx中。设置gotDefault
以便我们知道以前已尝试过这样做。- 返回:
- 非空的缓存初始上下文。
- 抛出:
-
NoInitialContextException
- 如果找不到初始上下文。 -
NamingException
- 如果遇到命名异常。
-
getURLOrDefaultInitCtx
为解析字符串名称name
检索上下文。如果name
是URL字符串,则尝试为其查找URL上下文。如果找不到URL上下文,或者name
不是URL字符串,则返回getDefaultInitCtx()
。有关子类如何使用此方法的描述,请参见getURLOrDefaultInitCtx(Name)。
- 参数:
-
name
- 要获取上下文的非空名称。 - 返回:
-
name
的URL上下文或缓存的初始上下文。结果不能为空。 - 抛出:
-
NoInitialContextException
- 如果找不到初始上下文。 -
NamingException
- 如果遇到命名异常。 - 参见:
-
getURLOrDefaultInitCtx
为解析name
检索上下文。如果name
的第一个组件是URL字符串,则尝试为其查找URL上下文。如果找不到URL上下文,或者name
的第一个组件不是URL字符串,则返回getDefaultInitCtx()
。创建InitialContext的子类时,请按以下方式使用此方法。定义一个新方法,该方法使用此方法获取所需子类的初始上下文。
protected XXXContext getURLOrDefaultInitXXXCtx(Name name) throws NamingException { Context answer = getURLOrDefaultInitCtx(name); if (!(answer instanceof XXXContext)) { if (answer == null) { throw new NoInitialContextException(); } else { throw new NotContextException("Not an XXXContext"); } } return (XXXContext)answer; }
public Object XXXMethod1(Name name, ...) { throws NamingException { return getURLOrDefaultInitXXXCtx(name).XXXMethod1(name, ...); }
- 参数:
-
name
- 要获取上下文的非空名称。 - 返回:
-
name
的URL上下文或缓存的初始上下文。结果不能为空。 - 抛出:
-
NoInitialContextException
- 如果找不到初始上下文。 -
NamingException
- 如果遇到命名异常。 - 参见:
-
lookup
从接口复制的描述:Context
检索命名对象。有关详细信息,请参见Context.lookup(Name)
。- 在接口中指定:
-
lookup
在接口Context
中 - 参数:
-
name
- 要查找的对象的名称 - 返回:
-
绑定到
name
的对象 - 抛出:
-
NamingException
- 如果遇到命名异常
-
lookup
从接口复制的描述:Context
检索命名对象。如果name
为空,则返回此上下文的新实例(表示与此上下文相同的命名上下文,但其环境可以独立修改并且可以同时访问)。- 在接口中指定:
-
lookup
在接口Context
中 - 参数:
-
name
- 要查找的对象的名称 - 返回:
-
绑定到
name
的对象 - 抛出:
-
NamingException
- 如果遇到命名异常 - 参见:
-
bind
从接口复制的描述:Context
将名称绑定到对象。有关详细信息,请参见Context.bind(Name, Object)
。- 在接口中指定:
-
bind
在接口Context
中 - 参数:
-
name
- 要绑定的名称;不能为空 -
obj
- 要绑定的对象;可能为空 - 抛出:
-
NameAlreadyBoundException
- 如果名称已绑定 -
InvalidAttributesException
- 如果对象未提供所有必需属性 -
NamingException
- 如果遇到命名异常
-
bind
从接口复制的描述:Context
将名称绑定到对象。所有中间上下文和目标上下文(由名称的所有但终端原子组件命名)必须已经存在。- 指定者:
-
bind
在接口Context
中 - 参数:
-
name
- 要绑定的名称;不能为空 -
obj
- 要绑定的对象;可能为空 - 抛出:
-
NameAlreadyBoundException
- 如果名称已经绑定 -
InvalidAttributesException
- 如果对象未提供所有必需的属性 -
NamingException
- 如果遇到命名异常 - 参见:
-
rebind
从接口复制的描述:Context
将名称绑定到对象,覆盖任何现有绑定。有关详细信息,请参阅Context.rebind(Name, Object)
。- 指定者:
-
rebind
在接口Context
中 - 参数:
-
name
- 要绑定的名称;不能为空 -
obj
- 要绑定的对象;可能为空 - 抛出:
-
InvalidAttributesException
- 如果对象未提供所有必需的属性 -
NamingException
- 如果遇到命名异常
-
rebind
从接口复制的描述:Context
将名称绑定到对象,覆盖任何现有绑定。所有中间上下文和目标上下文(由名称除最后一个原子组件外的所有部分命名)必须已经存在。如果对象是
DirContext
,则与名称关联的任何现有属性将被替换为对象的属性。否则,与名称关联的任何现有属性保持不变。- 指定者:
-
rebind
在接口Context
中 - 参数:
-
name
- 要绑定的名称;不能为空 -
obj
- 要绑定的对象;可能为空 - 抛出:
-
InvalidAttributesException
- 如果对象未提供所有必需的属性 -
NamingException
- 如果遇到命名异常 - 参见:
-
unbind
从接口复制的描述:Context
取消绑定指定的对象。有关详细信息,请参阅Context.unbind(Name)
。- 指定者:
-
unbind
在接口Context
中 - 参数:
-
name
- 要取消绑定的名称;不能为空 - 抛出:
-
NameNotFoundException
- 如果中间上下文不存在 -
NamingException
- 如果遇到命名异常
-
unbind
从接口复制的描述:Context
取消绑定指定的对象。从目标上下文中删除name
中的终端原子名称,该目标上下文由name
除最终原子部分外的所有部分命名。此方法是幂等的。即使在目标上下文中未绑定终端原子名称,它也会成功,但如果任何中间上下文不存在,则会抛出
NameNotFoundException
。与名称关联的任何属性都将被移除。中间上下文不会更改。
- 指定者:
-
unbind
在接口Context
中 - 参数:
-
name
- 要取消绑定的名称;不能为空 - 抛出:
-
NameNotFoundException
- 如果中间上下文不存在 -
NamingException
- 如果遇到命名异常 - 参见:
-
rename
从接口复制的描述:Context
将新名称绑定到绑定到旧名称的对象,并取消绑定旧名称。有关详细信息,请参阅Context.rename(Name, Name)
。- 指定者:
-
rename
在接口Context
中 - 参数:
-
oldName
- 现有绑定的名称;不能为空 -
newName
- 新绑定的名称;不能为空 - 抛出:
-
NameAlreadyBoundException
- 如果newName
已经绑定 -
NamingException
- 如果遇到命名异常
-
rename
从接口复制的描述:Context
将新名称绑定到绑定到旧名称的对象,并取消绑定旧名称。两个名称都是相对于此上下文的。与旧名称关联的任何属性将与新名称关联。旧名称的中间上下文不会更改。- 指定者:
-
rename
在接口Context
中 - 参数:
-
oldName
- 现有绑定的名称;不能为空 -
newName
- 新绑定的名称;不能为空 - 抛出:
-
NameAlreadyBoundException
- 如果newName
已经绑定 -
NamingException
- 如果遇到命名异常 - 参见:
-
list
从接口复制的描述:Context
枚举命名上下文中绑定的名称,以及绑定到它们的对象的类名。有关详细信息,请参阅Context.list(Name)
。- 指定者:
-
list
在接口Context
中 - 参数:
-
name
- 要列出的上下文的名称 - 返回:
-
此上下文中绑定的名称和类名的枚举。枚举的每个元素都是
NameClassPair
类型。 - 抛出:
-
NamingException
- 如果遇到命名异常
-
list
从接口复制的描述:Context
枚举绑定在指定上下文中的名称,以及绑定到它们的对象的类名。不包括任何子上下文的内容。如果向此上下文添加或删除绑定,则先前返回的枚举的影响是未定义的。
- 指定者:
-
list
在接口Context
中 - 参数:
-
name
- 要列出的上下文的名称 - 返回:
-
此上下文中绑定的名称和类名的枚举。枚举的每个元素都是
NameClassPair
类型。 - 抛出:
-
NamingException
- 如果遇到命名异常 - 参见:
-
listBindings
从接口复制的描述:Context
枚举绑定在指定上下文中的名称,以及绑定到它们的对象。有关详细信息,请参阅Context.listBindings(Name)
。- 指定者:
-
listBindings
在接口Context
中 - 参数:
-
name
- 要列出的上下文的名称 - 返回:
-
此上下文中绑定的枚举。枚举的每个元素都是
Binding
类型。 - 抛出:
-
NamingException
- 如果遇到命名异常
-
listBindings
从接口复制的描述:Context
枚举绑定在指定上下文中的名称,以及绑定到它们的对象。不包括任何子上下文的内容。如果向此上下文添加或删除绑定,则先前返回的枚举的影响是未定义的。
- 指定者:
-
listBindings
在接口Context
中 - 参数:
-
name
- 要列出的上下文的名称 - 返回:
-
此上下文中绑定的枚举。枚举的每个元素都是
Binding
类型。 - 抛出:
-
NamingException
- 如果遇到命名异常 - 参见:
-
destroySubcontext
从接口复制的描述:Context
销毁指定的上下文并将其从命名空间中移除。有关详细信息,请参阅Context.destroySubcontext(Name)
。- 指定者:
-
destroySubcontext
在接口Context
中 - 参数:
-
name
- 要销毁的上下文的名称;不能为空 - 抛出:
-
NameNotFoundException
- 如果中间上下文不存在 -
NotContextException
- 如果名称已绑定但未命名上下文,或未命名适当类型的上下文 -
ContextNotEmptyException
- 如果命名的上下文不为空 -
NamingException
- 如果遇到命名异常
-
destroySubcontext
从接口复制的描述:Context
销毁指定的上下文并将其从命名空间中移除。与名称关联的任何属性也将被移除。不会销毁中间上下文。此方法是幂等的。即使目标上下文中的终端原子名称未绑定,它也会成功,但如果任何中间上下文不存在,则会抛出
NameNotFoundException
。在联合命名系统中,一个命名系统中的上下文可能绑定到另一个命名系统中的名称。随后,可以使用复合名称查找并对外部上下文执行操作。但是,尝试使用此复合名称销毁上下文将失败,并显示
NotContextException
,因为外部上下文不是绑定它的上下文的“子上下文”。相反,请使用unbind()
来移除外部上下文的绑定。销毁外部上下文需要在外部上下文的“本机”命名系统中执行destroySubcontext()
。- 指定者:
-
destroySubcontext
在接口Context
中 - 参数:
-
name
- 要销毁的上下文的名称;不能为空 - 抛出:
-
NameNotFoundException
- 如果中间上下文不存在 -
NotContextException
- 如果名称已绑定但未命名上下文,或未命名适当类型的上下文 -
ContextNotEmptyException
- 如果命名的上下文不为空 -
NamingException
- 如果遇到命名异常 - 参见:
-
createSubcontext
从接口复制的描述:Context
创建并绑定新的上下文。有关详细信息,请参阅Context.createSubcontext(Name)
。- 指定者:
-
createSubcontext
在接口Context
中 - 参数:
-
name
- 要创建的上下文的名称;不能为空 - 返回:
- 新创建的上下文
- 抛出:
-
NameAlreadyBoundException
- 如果名称已经绑定 -
InvalidAttributesException
- 如果创建子上下文需要指定强制属性 -
NamingException
- 如果遇到命名异常
-
createSubcontext
从接口复制的描述:Context
创建并绑定新的上下文。使用给定名称创建新的上下文,并将其绑定到目标上下文(由名称的所有但终端原子组件命名)。所有中间上下文和目标上下文必须已经存在。- 指定者:
-
createSubcontext
在接口Context
中 - 参数:
-
name
- 要创建的上下文的名称;不能为空 - 返回:
- 新创建的上下文
- 抛出:
-
NameAlreadyBoundException
- 如果名称已经绑定 -
InvalidAttributesException
- 如果创建子上下文需要指定强制属性 -
NamingException
- 如果遇到命名异常 - 参见:
-
lookupLink
从接口复制的描述:Context
检索指定的对象,遵循链接,但不包括名称的终端原子组件。有关详细信息,请参阅Context.lookupLink(Name)
。- 指定者:
-
lookupLink
在接口Context
中 - 参数:
-
name
- 要查找的对象的名称 - 返回:
-
绑定到
name
的对象,不跟随终端链接(如果有的话) - 抛出:
-
NamingException
- 如果遇到命名异常
-
lookupLink
从接口复制的描述:Context
检索命名对象,跟随链接,但不包括名称的终端原子组件。如果绑定到name
的对象不是链接,则返回对象本身。- 指定者:
-
lookupLink
在接口Context
中 - 参数:
-
name
- 要查找的对象的名称 - 返回:
-
绑定到
name
的对象,不跟随终端链接(如果有的话)。 - 抛出:
-
NamingException
- 如果遇到命名异常 - 参见:
-
getNameParser
从接口复制的描述:Context
检索与命名上下文关联的解析器。有关详细信息,请参阅Context.getNameParser(Name)
。- 指定者:
-
getNameParser
在接口Context
中 - 参数:
-
name
- 要获取解析器的上下文的名称 - 返回:
- 一个可以将复合名称解析为其原子组件的名称解析器
- 抛出:
-
NamingException
- 如果遇到命名异常
-
getNameParser
从接口复制的描述:Context
检索与命名上下文关联的解析器。在命名空间联合中,不同的命名系统将以不同的方式解析名称。此方法允许应用程序获取用于使用特定命名系统的命名约定将名称解析为其原子组件的解析器。在任何单个命名系统中,此方法返回的NameParser
对象必须相等(使用equals()
测试)。- 指定者:
-
getNameParser
在接口Context
中 - 参数:
-
name
- 要获取解析器的上下文的名称 - 返回:
- 一个可以将复合名称解析为其原子组件的名称解析器
- 抛出:
-
NamingException
- 如果遇到命名异常 - 参见:
-
composeName
与此上下文的名称组合名称。由于初始上下文可能永远不会相对于除自身以外的任何上下文命名,因此prefix
参数的值必须是空名称(""
)。- 指定者:
-
composeName
在接口Context
中 - 参数:
-
name
- 相对于此上下文的名称 -
prefix
- 相对于其祖先之一的此上下文的名称 - 返回:
-
prefix
和name
的组合 - 抛出:
-
NamingException
- 如果遇到命名异常
-
composeName
与此上下文的名称组合名称。由于初始上下文可能永远不会相对于除自身以外的任何上下文命名,因此prefix
参数的值必顠是空名称。- 指定者:
-
composeName
在接口Context
中 - 参数:
-
name
- 相对于此上下文的名称 -
prefix
- 相对于其祖先之一的此上下文的名称 - 返回:
-
prefix
和name
的组合 - 抛出:
-
NamingException
- 如果遇到命名异常 - 参见:
-
addToEnvironment
从接口复制的描述:Context
向此上下文的环境中添加新的环境属性。如果属性已经存在,则其值将被覆盖。有关环境属性的更多详细信息,请参阅类描述。- 指定者:
-
addToEnvironment
在接口Context
中 - 参数:
-
propName
- 要添加的环境属性的名称;不得为null -
propVal
- 要添加的属性的值;不得为null - 返回:
- 属性的先前值,如果属性之前不在环境中则为null
- 抛出:
-
NamingException
- 如果遇到命名异常 - 参见:
-
removeFromEnvironment
从接口复制的描述:Context
从此上下文的环境中删除环境属性。有关环境属性的更多详细信息,请参阅类描述。- 指定者:
-
removeFromEnvironment
在接口Context
中 - 参数:
-
propName
- 要删除的环境属性的名称;不得为null - 返回:
- 属性的先前值,如果属性不在环境中则为null
- 抛出:
-
NamingException
- 如果遇到命名异常 - 参见:
-
getEnvironment
从接口复制的描述:Context
检索此上下文的当前环境。有关环境属性的更多详细信息,请参阅类描述。调用者不应对返回的对象进行任何更改:对上下文的影响是未定义的。可以使用
addToEnvironment()
和removeFromEnvironment()
更改此上下文的环境。- 指定者:
-
getEnvironment
在接口Context
中 - 返回:
- 此上下文的环境;永不为null
- 抛出:
-
NamingException
- 如果遇到命名异常 - 参见:
-
close
从接口复制的描述:Context
关闭此上下文。此方法立即释放此上下文的资源,而不是等待垃圾回收器自动释放它们。此方法是幂等的:在已关闭的上下文上调用它不会产生任何效果。不允许在已关闭的上下文上调用任何其他方法,并导致未定义的行为。
- 指定者:
-
close
在接口Context
- 抛出:
-
NamingException
- 如果遇到命名异常
-
getNameInNamespace
从接口复制的描述:Context
检索此上下文在其自己命名空间中的完整名称。许多命名服务都有各自命名空间中对象的“完整名称”概念。例如,LDAP条目具有专有名称,DNS记录具有完全限定名称。此方法允许客户端应用程序检索此名称。此方法返回的字符串不是JNDI复合名称,不应直接传递给上下文方法。对于不具备完整名称概念的命名系统,将抛出
OperationNotSupportedException
。- 指定者:
-
getNameInNamespace
在接口Context
- 返回:
- 此上下文在其自己命名空间中的名称;永不为null
- 抛出:
-
OperationNotSupportedException
- 如果命名系统没有完整名称概念 -
NamingException
- 如果遇到命名异常
-