Project from the online course Spring Framework 5: Beginner to Guru by John Thompson — Sections 7, 8, 9, 10, 11 and 12.
- Section 7
- Introduction to Web Development with Spring MVC
- Introduction to Thymeleaf
- Create Index Page
- HTTP Protocol
- HTTP Request Methods
- Chrome Developer Tools
- Firefox Firebug
- Firefox Developer Edition
- Safari Web Inspector
- Axis TCPMon
- Spring Boot Development Tools
- IntelliJ Compiler Configuration for Spring Boot Development Tools
- Section 8
- Introduction - JPA Data Modeling with Spring and Hibernate
- JPA Entity Relationships
- Recipe Data Model
- Forking in GitHub
- One To One JPA Relationships
- One To Many JPA Relationships
- JPA Enumerations
- Many To Many JPA Relationships
- Creating Spring Data Repositories
- Database Initialization with Spring
- Spring Data JPA Query Methods
- Pro-Tips - Using Setters for JPA Bidirectional Relationships
- Section 9
- Introduction to Project Lombok
- Project Lombok Features
- Adding Project Lombok and IDE Configuration
- Using Project Lombok
- Gotchas with Project Lombok
- Section 10
- Introduction to Testing Spring Framework Applications
- Using Bootstrap CSS
- Introduction to Testing Spring Framework Apps
- Creating a JUnit Test
- Using Mockito Mocks
- Mockito Argument Capture
- Introduction to Spring MockMVC
- Spring Integration Test
- Maven Failsafe Plugin
- Continuous Integration Testing with Circle CI
- Introduction to JUnit 5
- Section 11
- Introduction
- Using WebJars with Spring Boot
- Display a Recipe by ID
- Processing Form Posts with Spring MVC
- Creating a Command Object and Type Conversions in Spring
- Create a Recipe
- Update a Recipe
- Delete a Recipe
- View Ingredients
- Show Ingredient
- Update Ingredient
- Create an Ingredient
- Enumeration Dropdowns with Spring MVC and Thymeleaf
- Using the Debugger
- Uploading Images with Spring MVC
- Persisting images to Database
- Displaying images from Database
- Section 12
- Introduction to Validation and Constraints with Spring MVC
- Overview of Exception Handling
- Using Spring MVC Annotation @ResponseStatus
- Spring MVC Exception Handler
- Showing Error Data on 404 Error Page
- Spring MVC Controller Advice
- Data Validation with JSR-303
- Data Validation with Spring MVC
- Displaying Validation Errors with Thymeleaf
- Customizing Error Messages with Message Source
- Introduction to Internationalization
- Internationalization with Spring MVC
- Project: Maven
- Java: 11
- Spring Boot: 2.4.5
- Dependencies
- Spring Data JPA
- Thymeleaf
- Spring Web
- Spring Boot DevTools
- H2 Database
- Spring Boot Starter Test
- Lombok
- WebJars Locator
- JQuery
- Bootstrap
- Validation
- MariaDB Driver
- Spring Security
- Bucket4j
- Spring cache abstraction
- Ehcache
- Plugins
- Spring Boot Maven Plugin
- Maven Failsafe Plugin
- JaCoCo Maven Plugin
- Heroku Maven Plugin
App deployed on Heroku