文档

Java™教程
隐藏目录
添加、替换或删除绑定
路径: Java命名和目录接口
课程:命名和目录操作

添加、替换或删除绑定

Context接口包含了在上下文中添加、替换和删除绑定的方法。

添加绑定

Context.bind()用于向上下文中添加绑定。它接受两个参数,即对象的名称和要绑定的对象。


在继续之前:本课程中的示例需要对架构进行添加。您必须在LDAP服务器中关闭架构检查或者将附带本教程的架构文件添加到服务器中。这两个任务通常由目录服务器的管理员执行。请参阅LDAP设置课程。


// 创建要绑定的对象
Fruit fruit = new Fruit("orange");

// 执行绑定
ctx.bind("cn=Favorite Fruit", fruit);

此示例创建了一个Fruit类的对象,并将其绑定到上下文ctx中的名称"cn=Favorite Fruit"。如果您随后在ctx中查找名称"cn=Favorite Fruit",则会得到fruit对象。请注意,要编译Fruit类,您需要FruitFactory类。

如果您运行此示例两次,那么第二次尝试将失败并抛出NameAlreadyBoundException异常。这是因为名称"cn=Favorite Fruit"已经绑定。要使第二次尝试成功,您需要使用rebind()方法。

添加或替换绑定

rebind()用于添加或替换绑定。它接受与bind()相同的参数,但语义是,如果名称已经绑定,则将解除绑定并将新指定的对象进行绑定。

// 创建要绑定的对象
Fruit fruit = new Fruit("lemon");

// 执行绑定
ctx.rebind("cn=喜欢的水果", fruit);

当你运行这个例子时,它将替换bind()例子创建的绑定。

将绑定到柠檬的绑定被绑定到橙子替换。

移除绑定

要移除绑定,使用unbind()

// 移除绑定
ctx.unbind("cn=喜欢的水果");

这个例子在运行时会移除bind()rebind()例子创建的绑定。


上一页:列出上下文
下一页:重命名