FULL_NAME: Suraj-codes1410/Ecom-avenue
No description provided for this repository.
A production-style E-Commerce REST API built using Spring Boot, Spring Data JPA, Hibernate, H2 Database, Docker, and Maven.
The application provides complete CRUD operations for products, user management, shopping cart functionality, and order processing while following a layered architecture (Controller → Service → Repository).
---
---
| Technology | Purpose |
| -------------------- | --------------------- |
| Java 21 | Programming Language |
| Spring Boot | Backend Framework |
| Spring Data JPA | Data Access Layer |
| Hibernate | ORM |
| H2 Database | Development Database |
| Maven | Dependency Management |
| Docker | Containerization |
| Lombok | Boilerplate Reduction |
| Spring Boot Actuator | Monitoring |
---
textController Layer ↓ Service Layer ↓ Repository Layer ↓ Database
Project Structure:
text
├── controller
├── service
├── repository
├── model
├── dto
└── EcomApplication`
---
| Method | Endpoint | Description |
| ------ | ------------------ | ----------------- |
| POST | /api/products | Create Product |
| GET | /api/products | Get All Products |
| GET | /api/products/{id} | Get Product By ID |
| PUT | /api/products/{id} | Update Product |
| DELETE | /api/products/{id} | Delete Product |
| Method | Endpoint | Description |
| ------ | --------------------------- | ------------------- |
| POST | /api/cart | Add Product To Cart |
| GET | /api/cart/items | Get Cart |
| DELETE | /api/cart/items/{productId} | Remove Product |
| Method | Endpoint | Description |
| ------ | ---------------- | ----------------- |
| POST | /api/orders | Place Order |
| GET | /api/orders | Get Orders |
| GET | /api/orders/{id} | Get Order Details |
---
bashgit clone https://github.com/<your-username>/<repository-name>.git cd ecom-application
bashmvn clean install
bashmvn spring-boot:run
Application starts on:
texthttp://localhost:8080
---
Access:
texthttp://localhost:8080/h2-console
Example Configuration:
textJDBC URL : jdbc:h2:mem:test Username : sa Password :
---
text/actuator /actuator/health /actuator/info
---
bashmvn spring-boot:build-image
bashdocker run -p 8080:8080 ecom-application
bashdocker pull surajcodes1410/ecom-application:latest
---
json{ "id": 1, "totalAmount": 2199.80, "status": "CONFIRMED", "items": [ { "id": 1, "productId": 101, "quantity": 2, "price": 1099.90, "subTotal": 2199.80 } ], "createdAt": "2026-06-10T16:26:09.462861" }
---
---
Suraj
Java Backend Developer | Spring Boot Enthusiast
Built as a hands-on project to learn enterprise backend development, REST API design, database integration, and Docker-based deployment.
multiverse repo show Ecom-avenuemultiverse repo clone Ecom-avenue