Spec-Zone .ru
спецификации, руководства, описания, API
След: Именование Java и Интерфейс Каталога
Урок: Именование и Операции Каталога
Считайте Атрибуты
Домашняя страница > Именование Java и Интерфейс Каталога > Именование и Операции Каталога

Считайте Атрибуты

Чтобы считать атрибуты объекта из каталога, используйте DirContext.getAttributes() и передайте это имя объекта, для которого Вы хотите атрибуты. Предположите, что у объекта в службе именования есть имя "cn=Ted Geisel, ou=People". Чтобы получить атрибуты этого объекта, Вы будете нуждаться code это похоже на это:

Attributes answer = ctx.getAttributes("cn=Ted Geisel, ou=People");

Можно тогда напечатать содержание этого ответа следующим образом.

for (NamingEnumeration ae = answer.getAll(); ae.hasMore();) {
    Attribute attr = (Attribute)ae.next();
    System.out.println("attribute: " + attr.getID());
    /* Print each value */
    for (NamingEnumeration e = attr.getAll(); e.hasMore();
         System.out.println("value: " + e.next()))
        ;
}

Это производит следующий вывод.

# java GetattrsAll
attribute: sn
value: Geisel
attribute: objectclass
value: top
value: person
value: organizationalPerson
value: inetOrgPerson
attribute: jpegphoto
value: [B@1dacd78b
attribute: mail
value: Ted.Geisel@JNDITutorial.example.com
attribute: facsimiletelephonenumber
value: +1 408 555 2329
attribute: telephonenumber
value: +1 408 555 5252
attribute: cn
value: Ted Geisel

Возврат Выбранных Атрибутов

Чтобы считать выборочное подмножество атрибутов, Вы предоставляете массив строк, которые являются идентификаторами атрибута атрибутов, которые Вы хотите получить.

// Specify the ids of the attributes to return
String[] attrIDs = {"sn", "telephonenumber", "golfhandicap", "mail"};

// Get the attributes requested
Attributes answer = ctx.getAttributes("cn=Ted Geisel, ou=People", attrIDs);

This example просит "sn", "telephonenumber", "golfhandicap" и атрибуты "mail" объектного "cn=Ted Geisel, ou=People". У этого объекта есть все кроме атрибута "golfhandicap", и таким образом, три атрибута возвращаются в ответе. Следующее является выводом примера.

# java Getattrs
attribute: sn
value: Geisel
attribute: mail
value: Ted.Geisel@JNDITutorial.example.com
attribute: telephonenumber
value: +1 408 555 5252

Проблемы с примерами? Попытайтесь Компилировать и Выполнить Примеры: FAQ.
Жалобы? Поздравление? Предложения? Дайте нам свою обратную связь.

Предыдущая страница: Названия атрибута
Следующая страница: Измените Атрибуты