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 一起扩展,以将此支持包含在您的仓库中。