Spring 数据流与流
Spring Data Streamable vs Stream
我知道目的是什么以及如何将 Stream 处理为查询输出,即:
Stream<Person> findAll();
然而,最近我偶然发现了 org.springframework.data.util.Streamable<T>
,其用法与 Stream
:
相同
Streamable<Person> findByNameContaining(String name, Sort sort);
Streamable
的用例是什么?
接口流
Functional Interface: This is a functional interface and can therefore
be used as the assignment target for a lambda expression or method
reference.
来自 java.util
的流只是一个接口。
Streamable 是从 Spring 创建的,作为扩展 Iterable<T>
的功能接口
Streamable 也有一些默认方法和一些静态方法。但它曾经能够利用功能接口的工作方式提供迭代器作为 lambda 函数。
这只是技术信息。
根据我的理解,现在实用它的主要用途是将 Iterable<T>
转换为 Stream<T>
Iterable<String> it = Arrays.asList("a","b","c");
Stream<String> s = Streamable.of(it).stream();
不存在直接将 Iterable<T>
转换为 Stream<T>
的简单方法,因此他们发明了它。
您可以在此处找到大部分用途 Uses of Spring Streamable
我知道目的是什么以及如何将 Stream 处理为查询输出,即:
Stream<Person> findAll();
然而,最近我偶然发现了 org.springframework.data.util.Streamable<T>
,其用法与 Stream
:
Streamable<Person> findByNameContaining(String name, Sort sort);
Streamable
的用例是什么?
接口流
Functional Interface: This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
来自 java.util
的流只是一个接口。
Streamable 是从 Spring 创建的,作为扩展 Iterable<T>
Streamable 也有一些默认方法和一些静态方法。但它曾经能够利用功能接口的工作方式提供迭代器作为 lambda 函数。
这只是技术信息。
根据我的理解,现在实用它的主要用途是将 Iterable<T>
转换为 Stream<T>
Iterable<String> it = Arrays.asList("a","b","c");
Stream<String> s = Streamable.of(it).stream();
不存在直接将 Iterable<T>
转换为 Stream<T>
的简单方法,因此他们发明了它。
您可以在此处找到大部分用途 Uses of Spring Streamable