Coding with Java Streams

Lab Steps

Logging in to the Amazon Web Services Console
Connecting to the Java Web IDE
Exercise 1 - Collecting
Exercise 2 - Streams

The hands-on lab is part of this learning path

Advanced Java Programming
course-steps 8 certification 1 lab-steps 7

Ready for the real environment experience?

Time Limit1h 30m


Lab Overview

Being able to code productively with Java Streams is an essential skill needed to create robust, bug-free, and performant applications.

This lab is designed to deepen your Java Streams knowledge. You will be required to complete the following Java coding exercise:

  • Exercise 1 - Collecting: Complete the Streaming code required to collect and aggregate Movie data stored on the filesystem, implementing methods such as:
    • getMovieCountByGenre
    • getPriceStatistics
    • getOnSaleMovieInfo
  • Exercise 2 - Streams: Complete the Streaming code required to filter and map over Movie data stored on the filesystem, implementing methods such as:
    • getMovieCount
    • getMoviesByStudio
    • getGenres
    • getMinimumPrice
    • findMovieByTitle

Note: Each exercise is supplied with a fully completed solution code for reference when required.

Lab Objectives

Upon completion of this lab, you will be able to:

  • Be able to work confidently with Java Streams
  • Implement custom grouping, filtering, and mapping solutions using Java Streams
  • Understand the benefits of working with Java Streams and associated Interfaces
  • Run and debug the Java code and examine the results that are printed to the console

You should:

  • Be comfortable with using a browser-based IDE

Lab Environment

This lab will start with the following AWS resources provisioned automatically for you:

  • A single EC2 instance, named, which will have a public IP address attached. This instance will host a web-based Java IDE (based on the Visual Code editor).

To achieve the lab end state, you will be walked through the process of:

  • Using your local browser, access the web-based Java IDE served from the
  • Completing the following lab exercises:
    • Exercise 1 - Collecting
    • Exercise 2 - Streams


June 16th, 2018 - Optimized creation of lab resources to reduce the time it takes to access the browser IDE by 60%.

About the Author

Learning paths17

Jeremy is the DevOps Content Lead at Cloud Academy where he specializes in developing technical training documentation for DevOps.

He has a strong background in software engineering, and has been coding with various languages, frameworks, and systems for the past 20+ years. In recent times, Jeremy has been focused on DevOps, Cloud, Security, and Machine Learning.

Jeremy holds professional certifications for both the AWS and GCP cloud platforms.

Covered Topics