簡體   English   中英

可以Spring LdapTemplate流結果嗎?

[英]Can Spring LdapTemplate stream results?

我試圖查詢所有人對象的活動目錄。 有超過700,000結果太多,無法讀入List 我目前的解決方案是使用分頁來獲取所有結果,但我寧願使用Java-8 Stream-API來獲取它們。 不幸的是,我沒有在LdapTemplate上找到任何返回Stream對象的方法。

我知道這可以返回所有結果:

public List<LdapPerson> findAll() {
        return ldapTemplate.search("","(objectClass=person)", mapper);
    }

但我正在尋找的是可以返回的東西:

public Stream<LdapPerson> findAll(){
   return ldaptemplate.?????????;
}

誰能指出我正確的方向?

不, LdapTemplate不提供直接從搜索元素返回Stream<T>的方法。 但是,由於方法LdapTemplate::search返回List<T> ,因此您可以使用collection.stream()方法的簡單調用來使用可轉換為Stream<T>任何 Collection<T>的特性:

public Stream<LdapPerson> findAll() {
    return ldapTemplate.search("", "(objectClass=person)", mapper).stream();
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM