文档

Java™教程
隐藏目录
创建和销毁子上下文
路径: Java命名和目录接口
课程: 命名和目录操作

创建和销毁子上下文

Context接口包含用于创建销毁子上下文的方法,即将一个上下文绑定在同类型的另一个上下文中。

这里描述的示例使用具有属性的对象,并在目录中创建一个子上下文。您可以使用这些DirContext方法将属性与对象关联,该绑定或子上下文在添加到命名空间时。例如,您可以创建一个Person对象并将其绑定到命名空间,同时关联有关该Person对象的属性。与之对应的命名将没有属性。

与bind()方法不同,createSubcontext()方法创建一个新的对象,即一个新的上下文,该上下文将绑定到目录中,而bind()方法将给定的对象绑定到目录中。

创建上下文

要创建一个命名上下文,您需要提供给createSubcontext()方法要创建的上下文的名称。要创建具有属性的上下文,您需要提供给DirContext.createSubcontext()方法要创建的上下文的名称和其属性。


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


// 创建要与新上下文关联的属性
Attributes attrs = new BasicAttributes(true); // 忽略大小写
Attribute objclass = new BasicAttribute("objectclass");
objclass.add("top");
objclass.add("organizationalUnit");
attrs.put(objclass);

// 创建上下文
Context result = ctx.createSubcontext("NewOu", attrs);

此示例创建一个名为"ou=NewOu"的新上下文,在上下文ctx中有一个名为"objectclass"的属性,具有两个值"top""organizationalUnit"

# java Create
ou=Groups: javax.naming.directory.DirContext
ou=People: javax.naming.directory.DirContext
ou=NewOu: javax.naming.directory.DirContext

这个例子 创建了一个名为 "NewOu" 的新上下文,它是 ctx 的子上下文。

图示了新的子上下文。

销毁上下文

要销毁一个上下文,你需要向 destroySubcontext() 方法提供要销毁的上下文的名称。

// 销毁上下文
ctx.destroySubcontext("NewOu");

这个例子 在上下文 ctx 中销毁了上下文 "NewOu"


上一页: 重命名
下一页: 属性名称