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 查詢。 -
Spring Data 倉庫支援 QueryDSL 謂詞。
QueryDslPredicateExecutor包含許多帶有適當引數的附加方法。您可以擴充套件此介面以及LdapRepository,以在您的倉庫中包含此支援。