Skip to content
AgileLogics
Advanced 5 min read

Advanced Projects

Prerequisites: Level 3 — Advanced

Build these using streams, concurrency, and the JVM/deployment knowledge from Level 3.

1. Multi-Threaded Word Counter

Given a folder of text files, use an ExecutorService to count word frequencies across all files in parallel (one Future per file), then merge the per-file results into a single combined count.

2. Plain-Java REST API

Using com.sun.net.httpserver.HttpServer (built into the JDK, no framework) or Spring Boot, build a small "task list" API with GET/POST/ DELETE endpoints backed by an in-memory Map, then swap the in-memory store for real JDBC + SQLite persistence.

3. Library System with a Real Database

Rebuild the Level 2 Library Management System backed by JDBC and SQLite instead of in-memory collections. Add JUnit tests using a mock Connection/PreparedStatement (or a real in-memory test database) so the test suite doesn't depend on a shared file.