Spring Boot MVC
A server-rendered todo list with create, edit, complete, delete, form validation, and Atlas persistence. Learn IoC, dependency injection, MVC, repositories, and CSRF forms.
Port 8080 · Database todo_mvcOpen tutorial →Learn Java web development step by step. Start with Servlets and JSP, then build Spring Boot applications with MongoDB, REST APIs, JWT authentication, and React.
Servlet routing becomes MVC controllers. JSP views become Thymeleaf templates. Then the same business workflow becomes a JSON API and a personal React application.
New to Java web applications? Start with HTTP, HTML forms, Tomcat, Servlet routing, JSP views, sessions, filters, and a runnable todo project. If you already know these concepts, continue to Spring Foundation.
Open the beginner tutorial →A server-rendered todo list with create, edit, complete, delete, form validation, and Atlas persistence. Learn IoC, dependency injection, MVC, repositories, and CSRF forms.
Port 8080 · Database todo_mvcOpen tutorial →Turn CRUD into a JSON contract. Implement requests, response codes, validation, and consistent errors. Test with an importable Postman collection.
Port 8081 · Database todo_restOpen tutorial →Register and sign in, issue and verify JWTs, hash passwords, and restrict every operation to the authenticated user. Build a working React interface.
API 8082 · React 5173 · Database todo_personalOpen tutorial →Download manuals + all projects + Postman
Extract the ZIP, open index.html for the documentation, and open the selected projects/ folder in your IDE. Each tutorial includes the source files you need to build and run its application.
Documentation works offline in a browser; copy buttons have a local-file fallback. Running an application requires the installed tools, first-time dependency downloads, and your own Atlas credentials. The HTML pages explain the code; they do not execute Java in the browser.
Install a JDK 21, Apache Maven 3.9+, and an IDE such as IntelliJ IDEA, Eclipse/STS, or VS Code with Java extensions. Maven must be on PATH and JAVA_HOME must point to the JDK directory, not its bin subdirectory. Use a terminal in the project folder. Internet access is needed on the first dependency download. Spring Boot projects include an embedded Tomcat server. The Servlets and JSPs tutorial explains how to install Tomcat separately.
For the React lab, also install Node.js 22.12+ and npm. For the REST labs, install Postman Desktop, or use the web client with its Desktop Agent for localhost requests.
java -version
javac -version
mvn -version
node --version
npm --versionExpect Java and javac to report version 21, Maven to report 3.9.x and its Java home, and Node to report a supported 22.x or newer version. If multiple JDKs are installed, Maven’s reported Java version determines compilation. The projects target Java 21; using an older JDK causes “release version 21 not supported.”
These examples deliberately pin Boot 4.1.1. Boot 4’s MVC starter is spring-boot-starter-webmvc; its MongoDB connection property is spring.mongodb.uri. When reading a Boot 3 tutorial, check its starter and configuration names before mixing it with this code.
Version references: Spring Boot requirements, Boot configuration properties, and Vite setup.
Source files, document links, and build results are recorded in the verification report. Live Atlas CRUD requires your database credentials. Use your own Atlas account and connection settings to run the applications.
The first two labs use a shared todo list. The personal lab adds user authentication and ownership. The JWT lab is a runnable instructional baseline: access tokens expire after 15 minutes, logout clears the browser token, and signing in again obtains a new token. The manual explains additional deployment requirements separately.
Implementation references: Spring Boot, Spring MVC & Thymeleaf, Atlas connections, Spring Security JWT, React, and Postman import.