{8.2.0-new} About Petstore App

What is the Petstore app?

Petstore is a simple CRUD (Create, Read, Update and Delete) application, which is meant to demonstrate the advantages of the Apache Juneau library. It is a live example showing how any JAVA back-end developer can use Juneau for parsing, POJO serialization and sending different types of serialized POJOs over REST.

What's the project layout?

Petstore application consists of three main parts, which are connected over REST:

Java back-end and front-end runs on: http://localhost:5000;
React front-end runs on: http://localhost:3000.

Project is based on a standard Spring Boot project structure. There are Models, Repositories, Services.
The main difference here - no Controller classes or @RestController annotations. Instead of it, we use PetStore.java interface class where REST calls are mapped with different methods.

Petstore has three types of DTO objects (database entities): Pets, Orders and Users.

All methods for creating, reading, updating or deleting database entities (pets, orders or users) are provided in PetStoreService.java class.

Example Pet, Order and User objects are created at program startup and saved in the database using JPA (Java Persistence API) and PetStoreService methods.

How does it work ?