Spring LDAP 仓库
Spring LDAP 内置支持 Spring Data 仓库。基本功能和配置在此处 描述。使用 Spring LDAP 仓库时,应记住以下几点
-
您可以使用 XML 配置中的
<ldap:repositories>
元素或配置类上的@EnableLdapRepositories
注释来启用 Spring LDAP 仓库。 -
要在自动生成的仓库中包含对
LdapQuery
参数的支持,请让您的接口扩展LdapRepository
而不是CrudRepository
。 -
所有 Spring LDAP 仓库都必须使用使用 ODM 注释进行注释的实体,如 对象-目录映射 (ODM) 中所述。
-
由于所有 ODM 管理的类都必须具有 Distinguished Name 作为 ID,因此所有 Spring LDAP 仓库都必须将 ID 类型参数设置为
javax.naming.Name
。内置的LdapRepository
仅采用一个类型参数:托管的实体类,默认 ID 为javax.naming.Name
。 -
由于 LDAP 协议的特殊性,Spring LDAP 仓库不支持分页和排序。
QueryDSL 支持
Spring LDAP 中包含基本的 QueryDSL 支持。此支持包括以下内容
-
一个名为
LdapAnnotationProcessor
的注释处理器,用于根据 Spring LDAP ODM 注释生成 QueryDSL 类。有关 ODM 注释的更多信息,请参见 对象-目录映射 (ODM)。 -
一个名为
QueryDslLdapQuery
的查询实现,用于在代码中构建和运行 QueryDSL 查询。 -
对 QueryDSL 谓词的 Spring Data 仓库支持。
QueryDslPredicateExecutor
包括许多具有适当参数的其他方法。您可以将此接口与LdapRepository
一起扩展,以将此支持包含在您的仓库中。