gpt4 book ai didi

java - 从 NamingEnumeration 中提取数据

转载 作者:搜寻专家 更新时间:2023-11-01 02:14:48 24 4
gpt4 key购买 nike

我的应用程序在 LDAP 服务器中搜索人员。

return ldapTemplate.search("", "(objectclass=person)", new AttributesMapper() {
public Object mapFromAttributes(Attributes attrs)
throws NamingException {

return attrs.get("cn").getAll();
}
});

它返回 NamingEnumeration 对象的列表,其中包含 vector 。每个 vector 可能包含一个或多个值。我可以通过这段代码打印人名

for(NamingEnumeration ne : list){
while (ne.hasMore()) {
System.out.println("name is : " + ne.next().toString());
}
}

因为我的 ldap 搜索可以包含多个值,所以在 NamingEnumeration 对象内的 vector 中。如何从中获取多个值。

最佳答案

因为您正在使用 java.util.Listjavax.naming.NamingEnumeration<java.util.Vector>比如这个,

List<NamingEnumeration<Vector>> list

您应该能够遍历 Vector在每个NamingEnumeration :

for (NamingEnumeration<Vector> ne : list) {
while (ne.hasMore()) {
Vector vector = ne.next();
for (Object object : vector) {
System.out.println(object);
}
}
}

请注意 Vector 被许多人认为是过时的,尽管没有被弃用。此外,封闭的集合可以使用类型参数。如果您有选择,请考虑以下替代方案之一:

List<NamingEnumeration<Vector<T>>>
List<NamingEnumeration<List<T>>>

关于java - 从 NamingEnumeration 中提取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8487544/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com