Files
spring-data-examples/mongodb/java8
Spring Operator e0ef48eb78 #474 - URL Cleanup.
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).

# Fixed URLs

## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.

* [ ] http://www.apache.org/licenses/ with 1 occurrences migrated to:
  https://www.apache.org/licenses/ ([https](https://www.apache.org/licenses/) result 200).
* [ ] http://www.apache.org/licenses/LICENSE-2.0 with 320 occurrences migrated to:
  https://www.apache.org/licenses/LICENSE-2.0 ([https](https://www.apache.org/licenses/LICENSE-2.0) result 200).
2019-03-22 08:00:34 +01:00
..
2019-03-22 08:00:34 +01:00
2019-03-20 10:11:16 -05:00

Spring Data MongoDB - Java 8 examples

This project contains samples of Java 8 specific features of Spring Data (MongoDB).

Support for JDK 8's Stream for repository methods

Repository methods can use a Java 8 Stream as a return type which will cause the reading of the results and the to-object-conversion of the DBObject to happen while iterating over the stream.

public interface PersonRepository extends CrudRepository<Person, String> {

  @Override
  List<Person> findAll();

  //Custom Query method returning a Java 8 Stream
  @Query("{}")
  Stream<Person> findAllByCustomQueryWithStream();
}

The test cases in PersonRepositoryIntegrationTest oppose a plain List based query method with one that uses a Stream and shows how the former pulls all data into memory first and the iteration is done over the pre-populated list. The execution of the Stream-based method in contrast shows that the individual elements are read and converted while iterating the stream.