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.
- 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.
| 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.
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.