Project from the online course Spring Framework 5: Beginner to Guru by John Thompson — Sections 24, 25 and 27.
- Section 24
- Introduction to RESTFul Web Services with Spring MVC
- New Spring Boot Project
- Spring Boot Command Line Runner
- Introduction to MapStruct
- Using MapStruct
- MapStruct IntelliJ Plugin
- Category Service
- List Categories
- Testing with Postman
- Create Get API for Customers
- Create New Customer With Post
- Update Customer with PUT
- Integration Testing with DataJPATest
- Update Customer with PATCH
- Delete Customer
- Externalize API URL Value
- Exception Handling
- Spring Rest Controller
- Create Vendors API
- Conclusion
- Section 25
- Introduction to Swagger
- What is Swagger
- Configuring Swagger
- Swagger UI
- Customizing Swagger with Meta Data
- Customizing Endpoint Documention
- Customize Vendors
- Introduction to Swagger Editor
- Swagger Code Gen
- Conclusion
- Section 27
- Introduction
- Spring MVC Content Negotiation Overview
- Maven Dependencies to Render XML with Spring MVC
- Introduction to XML Schema
- Using Multi-Module Maven Builds with Spring Boot
- Using JAXB to Generate Java Classes
- Refactor for JAXB Generated Classes
- Testing and Running JAXB Generated Classes in Spring Boot Application
- Conclusion
- Project: Maven
- Java: 11
- Spring Boot: 2.5.0
- Dependencies
- JavaBeans Activation Framework
- JAXB API
- JAXB Core
- JAXB Implementation
- Spring Data JPA
- Spring Web
- Spring Boot DevTools
- H2 Database
- Lombok
- Spring Boot Starter Test
- MapStruct
- SpringFox Boot Starter
- Jackson Dataformat XML
- Woodstox
- Spring Security
- Bucket4j
- Spring cache abstraction
- Ehcache
- Plugins
- Maven Compiler Plugin
- JAXB2 Maven Plugin
- Spring Boot Maven Plugin
- Maven Failsafe Plugin
- JaCoCo Maven Plugin
The API documentation created with Swagger can be found here.
API deployed on Heroku