This project is a web-based application developed using the Spring Boot framework, PostgreSQL database management system, and Hibernate ORM framework for handling database operations. It follows a well-structured architecture with distinct layers for business logic, data access, and presentation. Data transfer between layers is managed using DTO (Data Transfer Object) classes.
- Spring Boot
- PostgreSQL
- Hibernate ORM
- Spring MVC
- Swagger UI
- Java Bean Validation API
- Hibernate Validator
- Spring Boot: Provides a powerful platform for building and running Spring applications.
- PostgreSQL: A robust open-source relational database management system used for storing application data.
- Hibernate ORM: Facilitates object-relational mapping and simplifies database operations.
- Spring MVC: A model-view-controller framework for building web applications in Java.
- Swagger UI: Allows for interactive API documentation and testing.
- Java Bean Validation API: Provides a framework for validating data using annotations.
- Hibernate Validator: An implementation of the Java Bean Validation API for Hibernate-specific validation rules.
The project follows a layered architecture with the following components:
- Presentation Layer: Handles user interaction and displays information to the user. Implemented using Spring MVC.
- Business Layer: Contains the application's business logic and rules.
- Data Access Layer: Responsible for interacting with the database. Utilizes Hibernate ORM for database operations.
- Data Transfer Objects (DTO): Classes used for transferring data between layers.
To run the project locally, follow these steps:
- Clone the repository:
git clone <https://github.com/lupsi12/rentAcar-backend.git>
- Navigate to the project directory:
cd <project-directory>
- Configure the PostgreSQL database connection in the
application.properties
file. - Build the project using Maven:
mvn clean install
- Run the application:
java -jar target/<rentAcar>.jar
- Access the application in a web browser:
http://localhost:8080
API documentation is available using Swagger UI. Once the application is running locally, access the Swagger UI interface at http://localhost:8080/swagger-ui.html
.