/spring5-pet-clinic

Spring Framework 5: Beginner to Guru

Primary LanguageJava

CircleCI

Spring Framework — Pet Clinic

Project from the online course Spring Framework 5: Beginner to Guru by John Thompson — Sections 2, 3, 4, 5, 7, 8, 9, 10, 11 and 12.

Contents

  • Section 2 (Intro)
  • Section 3
    • POJO Data Model
    • Multi-Module Maven Builds
    • Using the Maven Release Plugin
    • Create Interfaces for Services
    • Implement Base Entity
  • Section 4
    • Refactor Services to Common Interface
    • Implement Map Based Services
    • Using and Image for Custom Banner
    • Create Index Page and Controller
    • Create Vet Page and Controller
    • Create Owner Page and Controller
  • Section 5
    • Load Data on Startup with Java
    • Implement Spring Configuration
    • List Owners
    • List Vets
    • Auto Generate Map IDs
  • Section 7
    • Static Resources
    • Copy Master Template from Spring Pet Clinic
    • Implement Web Resource Optimizer for Java
    • Apply Master Layout to Index Page
    • Internationalization Properties
    • Apply Master Layout to Owner Page
    • Apply Master Layout to Vet Page
    • Create Pet Type, Pet, and Visit Entities
    • Create Vet Speciality Entity, Add to Vet
    • Add Contact Info to Owner
    • Create Pet Type Map Service
    • Pet Type Data on Startup
    • Enhance Owners with Pets and Contact Info
    • Create Specialty Map Service
    • Add Specialities to Vets on Startup
  • Section 8
    • Create Base Entity
    • Convert Owners to JPA Entities
    • Convert Vets to JPA Entities
    • Create Visit Entity
    • Add Spring Data JPA Repositories
    • Add Spring Data JPA Owner Service
    • Add Spring Data JPA Vet Service
    • Add Spring Data JPA Pet Type Service
    • Add Spring Data JPA Pet Service
    • Add Spring Data JPA Vet Speciality Service
    • Add Map Based Visit Service
    • Add Spring Data JPA Visit Service
    • Using Spring Profiles for Configuration
  • Section 9
    • Refactoring for Project Lombok
    • Amending Commit Messages
  • Section 10
    • Convert to JUnit 5
    • i18N French Message Properties
    • CRUD Tests for Owner Map Service
    • CRUD Tests for Owner SD JPA Service
    • Testing Owner Controller with MockMVC
    • CI with CircleCI
    • CircleCI Build Badge
  • Section 11
    • Display Owner Record
    • Git Feature Branch
    • Web Data Binder
    • Implement Find Owner
    • Create or Update Owner
    • Model Attribute
    • Create or Update Pet
    • Create or Update Visit
  • Section 12
    • Test Contribution
    • Visit Controller Tests
    • Pet Birthdate Binding
    • CRUD Tests Pet Map Service
    • Implement Vets List View
    • Implement Vets JSON Endpoint

Project Summary

  • Project: Maven
  • Java: 11
  • Spring Boot: 2.4.5
  • Dependencies
    • Spring Boot Actuator
    • Thymeleaf
    • Spring Web
    • Spring Boot DevTools
    • Lombok
    • Spring Starter Test
    • WebJars Locator
    • JQuery
    • JQuery UI
    • Bootstrap
    • Validation
    • Spring Security
    • Bucket4j
    • Spring cache abstraction
    • Ehcache
    • MySQL Driver
    • Spring Data JPA
    • H2 Database
  • Plugins
    • Spring Boot Maven Plugin
    • Maven Release Plugin
    • Maven Failsafe Plugin
    • Maven Surefire Plugin
    • wro4j

Deployment

App deployed on Heroku