Bazarify is a microservices-based application designed to manage customer data, orders, and shipping details. This project demonstrates the use of Spring Boot, Spring Data JPA, MySQL, and Spring Cloud for building scalable and maintainable applications.
- Customer Service: Manages customer data.
- Order Service: Manages orders linked to customers.
- Shipping Service: Manages shipping details linked to orders.
- Java 8+
- Spring Boot
- Spring Data JPA
- MySQL
- Spring Cloud Netflix Eureka
- Feign Client
- Spring Web
Manages customer data.
- Endpoints:
GET /customers
- Retrieve all customersGET /customers/{id}
- Retrieve customer by IDPOST /customers
- Create a new customerPUT /customers/{id}
- Update an existing customerDELETE /customers/{id}
- Delete a customer
Manages orders associated with customers.
- Endpoints:
GET /orders
- Retrieve all ordersGET /orders/{id}
- Retrieve order by IDPOST /orders
- Create a new orderPUT /orders/{id}
- Update an existing orderDELETE /orders/{id}
- Delete an order
Manages shipping details for orders.
- Endpoints:
GET /shippings/order/{orderId}
- Retrieve shipping details by order IDPOST /shippings
- Create new shipping detailsDELETE /shippings/{id}
- Delete shipping details
- Clone the repository:
git clone https://github.com/Awader28/Bazarify-Microservice-Project.git
cd bazarify
Modify src/main/resources/application.properties with your MySQL configuration and Eureka server details. Run the services: Navigate to each service directory (Customer, Order, Shipping) and run: mvn spring-boot:run
Navigate to the Eureka server directory: cd eureka-server Run the Eureka server:
mvn spring-boot:run
- Feign Client is used for communication between services.
- Ensure the Eureka server is running for service discovery. License This project is licensed under the MIT License