Skip to content

Repository files navigation

Java Learning Module

A practical Java 17 path for backend engineers, using an e-commerce orders domain. Each module has objectives, concepts, exercises, and verification. Work through 00 to 12 in order.

Prerequisites

  • JDK 17 (java -version)
  • A shell and an editor; no Android, Hadoop, or Spark installation is required

Run ./gradlew test to verify the complete course. Import the root directory as a Gradle project in your IDE.

Course map

Module Focus
00 Java, JVM, Gradle setup
01 OOP and domain modelling
02 Collections, generics, Optional
03 Lambdas and streams
04 Exceptions and JUnit testing
05 Concurrency and JVM basics
06 REST API design
07 JPA persistence
08 API quality and validation
09 Security and observability
10 Java on Android (orientation)
11 Java in big-data systems (orientation)
12 Capstone enterprise order service

The runnable examples deliberately use Java-only building blocks where possible. Spring Boot, JPA, Security, and Actuator are introduced as production integrations in the relevant lessons.

Exercise workflow

Modules 02–05 and 11 contain an intentionally incomplete implementation in 03-exercises/src/main/java and a completed answer in solutions/src/main/java. Implement the starter first, then compare it with the answer. Modules 06–09 provide focused framework examples; module 12 combines them into a runnable Spring Boot order API.

About

A practical Java 17 path for backend engineers, using an e-commerce orders domain. Each module has objectives, concepts, exercises, and verification. Work through `00` to `12` in order.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages