
LDAP Modify Batch를 사용하여 여러 개의 디렉터리 항목을 한번에 수정하는 방법은 없습니다. ModifyRequest는 하나의 디렉터리 항목을 수정하는 데 사용되며, 여러 개의 항목을 한번에 수정하는 기능은 없습니다.
그러나, LDAP Modify Batch를 사용하여 디렉터리 항목을 한번에 수정하는 방법은 다음과 같습니다.
1. 디렉터리 항목을 하나씩 수정하는 ModifyRequest를 생성합니다.
2. ModifyRequest를 LDAP Modify Batch에 추가합니다.
3. LDAP Modify Batch를 사용하여 디렉터리 항목을 하나씩 수정합니다.
예제를 들어보겠습니다.
#hostingforum.kr
java
import javax.naming.directory.Attribute;
import javax.naming.directory.Attributes;
import javax.naming.directory.DirContext;
import javax.naming.directory.ModificationItem;
import javax.naming.directory.ModificationItems;
import javax.naming.directory.SearchControls;
import javax.naming.directory.SearchResult;
import javax.naming.ldap.InitialLdapContext;
import javax.naming.ldap.LdapContext;
import java.util.ArrayList;
import java.util.List;
public class LdapModifyBatchExample {
public static void main(String[] args) throws Exception {
// LDAP 서버 주소
String ldapServer = "ldap://localhost:10389";
// LDAP 사용자 이름
String ldapUsername = "cn=admin,dc=example,dc=com";
// LDAP 암호
String ldapPassword = "password";
// 디렉터리 항목을 수정할 LDAP DN
String ldapDn = "cn=user1,dc=example,dc=com";
// 디렉터리 항목을 수정할 속성 이름
String attributeName = "sn";
// 디렉터리 항목을 수정할 속성 값
String attributeValue = "Kim";
// LDAP Modify Batch를 사용하여 디렉터리 항목을 수정합니다.
LdapContext ldapContext = new InitialLdapContext();
DirContext dirContext = ldapContext;
// 디렉터리 항목을 수정할 ModifyRequest를 생성합니다.
ModificationItem modificationItem = new ModificationItem(DirContext.REPLACE_ATTRIBUTE, attributeName.getBytes());
modificationItem.setValues(new byte[][]{attributeValue.getBytes()});
// 디렉터리 항목을 수정합니다.
dirContext.modifyAttributes(ldapDn, new ModificationItem[]{modificationItem});
}
}
이 예제는 LDAP Modify Batch를 사용하여 디렉터리 항목을 하나씩 수정하는 방법을 보여줍니다. ModifyRequest를 생성하고 LDAP Modify Batch에 추가하여 디렉터리 항목을 수정하는 방법을 보여줍니다.
2025-07-12 21:06