This Project was made as part of CSE687-Object Oriented Design. It is a Used Textbook Buy/Selling platform developed with Spring Boot, emphasizing Object Oriented Design principles. It features a modular, maintainable, and scalable architecture, ideal for buying and selling used books.
- Buying and selling used books
- Comprehensive list and detailed view of books
- User management functionalities
- Modules: Controller, Exception, Model, Repository, Service
GET /books
: Retrieve all books.GET /books/id/{bookId}
: Fetch book by ID.POST /AddBook
: Add a new book.PUT /UpdateBook
: Update book details.DELETE /DeleteBook/{bookId}
: Delete a book.
GET /users/allUsers
: Get all users.GET /users/{userId}
: Fetch user by ID.POST /users/create
: Create a new user.PUT /users/update
: Update user details.DELETE /users/delete/{userId}
: Delete a user.
GET /bookcopies
: Get all book copies.GET /bookcopies/{copyId}
: Fetch book copy by ID.POST /bookcopies
: Create a new book copy.PUT /bookcopies/update
: Update book copy details.DELETE /bookcopies/delete/{copyId}
: Delete a book copy.
POST /transactions/buy
: Buy a book.POST /transactions/sell
: Sell a book.
- Principles like Encapsulation, Inheritance, and Composition are implemented.
- Template Design Pattern
- Singleton Design Pattern used in Service and Controller classes.
Easily deployable via Docker Compose, just use the following command:-
Docker-Compose up