Developing REST API endpoints of various functionalities required for a website. In order to observe the functionality of the endpoints, you will use the Swagger user interface and store the data in the PostgreSQL database. Also, the project has to be implemented using Java Persistence API (JPA).
The Projects follows the below structure:
⭐ 1. quora-api
1️⃣ config - This directory must consist of all the required configuration files of the project (if any).
2️⃣ controller - This directory must consist of all the controller classes required for the project.
3️⃣ exception - This directory must consist of the exception handlers for all the exceptions.
4️⃣ endpoints - This directory consists of the JSON files which are used to generate the Request and Response models.
5️⃣ test - This directory consists of tests for all the controller classes.
⭐ 2. quora-db
1️⃣ config - This directory consists of the database properties and environment properties for local development.
2️⃣ sql - This directory consists of all the SQL queries to create database schema tables.
⭐ 3. quora-service
1️⃣ business - This directory must consist of all the implementations of the business logic of the application.
2️⃣ dao - This directory allows us to isolate the application/business layer from the persistence layer and must consist of the implementation of all the data access object classes.
3️⃣entity - This directory must consist of all the entity classes related to the project to map these class objects with the database.
4️⃣ exception - This directory consists of all the exceptions related to the project.