Package com.unboundid.ldap.sdk.persist

This package provides an API which intends to make it easy to interact with directory data using Java objects. It is primarily a persistence framework, which includes the ability to convert between Java objects and LDAP entries, but it also provides a means of performing LDAP operations (add, delete, modify, and search) with that data.

At the heart of the LDAP persistence framework is a set of annotation types that can be used to mark source code to indicate how it should be stored in the LDAP directory server. Those annotations include:
  • LDAPObject -- This annotation type is used to mark the class for objects that may be stored in an LDAP directory server. It provides information about the structural and auxiliary object classes that should be used in the LDAP representation of the data.
  • LDAPField -- This annotation type is used to mark fields in classes for objects that should be stored in an LDAP directory server. It provides information about the LDAP attribute that should be used to store the information for that field, and to identify constraints on how that field may be used.
  • LDAPGetter and LDAPSetter -- These annotation types provide an alternative to the LDAPField annotation. Rather than marking fields, they should be used to mark getter and setter methods that can be used to retrieve and update the associated value.
  • LDAPDNField -- This annotation type should be used to mark at most one field in a Java class whose value should be the DN of the LDAP entry with which the object instance is associated.
  • LDAPEntryField -- This annotation type should be used to mark at most one field in a Java class whose value should be a read-only representation of the LDAP entry with which the object instance is associated.


The LDAPObjectHandler class provides the primary interface for interacting with objects of a specified type and converting between the Java and LDAP representations of that data. The ObjectEncoder class provides an API that may be used to convert between Java and LDAP representations for object values.