2014-10-02 26 views
1

是否有任何方法在Spring LdapTemplate中測試一個條目是否存在?用於測試條目是否存在的Spring LdapTemplate方法?

我可以做一個搜索,但它似乎笨重,如果我知道我想檢查的具體的DN。 (我的用例:從組條目中檢查引用完整性以確保uniqueMember下列出的相應用戶DN確實存在。)

+2

我認爲你正在尋找某種'布爾存在(DN)'方法? AFAIK沒有這種方法。你可以使用'lookup(DN)'方法,但是如果它存在就返回對象,否則如果找不到對象則拋出'NameNotFoundException'。所以你需要捕捉異常。這對你有用嗎? – DB5 2014-10-06 11:40:01

回答

1

假設您ldapTemplate已設置baseDN(例如o=mycorp,dc=com),並且您想檢查是否有rdn存在(例如,ou=people):

private static boolean rdnExists(LdapTemplate ldapTemplate, String rdn) { 
    try { 
     ldapTemplate.lookup(rdn); 
     return true; 
    } catch (org.springframework.ldap.NamingException ne) { 
     return false; 
    } 
} 
相關問題