A basic full stack web application built with Spring Boot, MongoDB, and Thymeleaf. It demonstrates a complete flow from database to server-rendered HTML views. Users can view and submit movie reviews, with data persisted in a MongoDB database.
- Create, read, update, and delete movies
- Add and fetch reviews for each movie
- Server-rendered HTML reviews page with submission form (Thymeleaf)
- REST API endpoints for interacting with movie and review data
- Basic error handling and validation
| Layer | Technology |
|---|---|
| Backend | Java, Spring Boot |
| Frontend | Thymeleaf (server-side) |
| Database | MongoDB |
| Build Tool | Maven |
Movie.java,Review.java: Data modelsMovieController.java,ReviewController.java: API endpointsMovieService.java,ReviewService.java: Business logicMovieRepository.java,ReviewRepository.java: Data accessreviews.html: Thymeleaf template for reviews UIMoviesApplication.java: Spring Boot entry point
API Endpoints PUT /api/v1/reviews/{id} – Update a review
DELETE /api/v1/reviews/{id} – Delete a review
GET /api/v1/reviews/{id} - get a review
POST /api/v1/reviews/reviews – Submit a new review (via form)