
warningThis project was completed for coursework and is no longer maintained. Names and details have been modified for academic integrity. Below is a summary of the university’s main requirements.
Requirements link h2
Create a new Java project using Spring Initializr , incorporating essential dependencies like Spring Data JPA, Rest Repositories, MySQL Driver, and Lombok
Establish a GitLab repository for the project, ensuring regular commits and pushes to document progress, and submit the repository URL and branch history upon completion
Construct four new packages within the project to organize the codebase:
controllers,entities,dao(Data Access Object), andservices, focusing on functionalities related to a checkout form and vacation packages listDevelop
entityclasses and an enumerator in theentitiespackage that align with the provided UML diagram, ensuring accurate mapping to the project’s MySQL databaseCreate
repositoryinterfaces in thedaopackage that extendJpaRepository, adding cross-origin support to facilitate communication with the Angular front endImplement
serviceclasses in theservicespackage to handle purchase data and responses, including a checkout service interface and its implementationIntegrate validation within the application to ensure the data inputs meet the front-end requirements
Develop a REST controller in the
controllerspackage to manage checkout processes, including a post mapping to handle order placementsAdd five sample customers to the application programmatically, ensuring their data persist correctly without duplication on subsequent application runs
Test the integrated application by placing an order for a vacation with two excursions, verifying that there are no network errors and the data is correctly stored in the MySQL database, supported by appropriate screenshots