The Old Book Shop project is designed in Java using JSP and Servlet, available with the source code for the students who are pursuing degrees in the IT field. This project is designed to automate the process of an old book-selling shop thereby, easing the process of managing and keeping records of every detail related to the shop.
Old Book Shop (Bookopedia) System Overview
It is a multi-role application project i.e. Admin and Student, where Admin will have the main control over the system.
Admin can manage the database of the book shop. Admin will be responsible for maintaining the system and also, updating any details related to the shop, managing students, etc.
On the other hand, Students can register themselves and can log in to the system, either sell, purchase, or donate one or more books, can categorize and set the price range of books accordingly, make payments online and get the purchased books delivered to the doorstep.
The whole project is developed using Servlet and JSP. At the front end, we have used HTML, CSS, and Bootstrap. At the data access layer, we have used JDBC API. The Database used here is MYSQL. The whole project is following the MVC (Model View & Controller) design pattern.
Old Book Shop (Bookopedia) System Abstract
Selling old books or donating them, the books might go to a school, a community center, or a refugee camp, there’s no doubt that where they will go, they will be appreciated. Sometimes we have to get rid of some books and instead of dumping them the least we can do is to give them to the ones in need.
This can be achieved by selling or donating those books online. For this, Codebun has designed an Old Book Selling Shop project in java, which has two main roles i.e Admin and Student. Admin being the primary user. Admin can add/remove/update any details related to the shop, maintain the records of students, books, etc.
In this project, students will be solely responsible for selling or donating books to other students. Students can register themselves and can log in/log out of the system. Students can either sell, purchase, or donate one or more books, can categorize and set the price range of books accordingly, check the availability of books, make payments online and get the purchased books delivered to the doorstep.
The following are the major objective of this application:
- To provide a bug-free application.
- The main objective is to build a secured, robust Old Book Selling Shop System.
- It maintains the record of books, students, Payments, Purchase history, etc.
Modules in Old Book Shop System
Admin Module- This module will allow Admin to log in/log out of the system and manage the system and its functions.
Students Modules-
Students can register on the portal as book seekers and/or as booksellers i.e. either for purchasing, selling, or donating old books. Students can either sell, purchase, or donate one or more books to another student, the objective of this application is that the old books can be used by anyone in need, so students who can not buy books can easily avail benefits of old books. Students can View/Confirm/Cancel orders, can check payments, keep a check on the availability of old books, etc.
Book Seeker Module-
Book seekers can search books by category. Book seekers can see the books that are on sale and the ones that are up for charity. Book seekers can contact booksellers for any book-related inquiries. Book seekers can compare prices with other users of the same book available.
Book Seller Module-
A bookseller can add books with price or charity options. A bookseller can update or delete a book from the list. Booksellers can contact Book Seeker if required. A bookseller can earn rewards points for doing book charity. Charity points can be used to purchase charity books from the platform.
Users Roles
Two users can interact with this application 1) Admin 2) User
Admin:
- Can Log in/Log out of the system.
- Can manage the system.
- Can change password.
- Can manage “My profiles”.
Students:
- Can register as a book seeker or bookseller.
- Can log in/log out of the system.
- Can Manage “My profile”.
- Can categorize books accordingly.
- Can add book title, author, etc.
- Can search for books from a specific category.
- Can Place/Cancel an order.
- Can Sell/Purchase/Donate books.
- Can make payments online.
- Can change password.
Database Design
Table: Role
Field | DataType | Size | Constraints |
roleId | integer | 9 | primary key |
rolename | varchar | 20 | not null, unique |
Table: User
Field | DataType | Size | Constraints |
userId | integer | 9 | primary key |
firstName | varchar | 30 | not null |
varchar | 30 | not null | |
password | varchar | 30 | not null |
roleId | integer | 9 | foreign key |
mobile | varchar | 13 | |
gender | |||
createdAt | date |
Table: author
Field | DataType | Size | Constraints |
authorId | integer | 9 | primary key |
authorName | varchar | 30 | not null |
Table: book_type
Field | DataType | Size | Constraints |
book_type_id | integer | 9 | primary key |
book_type_name | varchar | 30 | not null |
Table: label
Field | DataType | Size | Constraints |
label_Id | integer | 9 | primary key |
label | varchar | 30 | not null, unique |
Table: book
Field | DataType | Size | Constraints |
book-Id | integer | 9 | primary key |
title | varchar | 30 | not null |
author-id | integer | 9 | foreign key |
user-id | integer | 9 | foreign key |
price | integer | 9 | not null |
isChairty | integer | 1 | |
createdAt | date |
Table: book_label
Field | DataType | Size | Constraints | |
bookId | integer | 9 | foreign key | book |
labelid | integer | 9 | foreign key | label |
book_labelid | integer | 9 | pk |
Table: book_bid
Field | DataType | Size | Constraints | |
book_bid_id | integer | 9 | primary key | |
book_id | integer | 9 | foreign key | book |
amount | integer | 9 | not null | |
userId | integer | 9 | foreign key | user |
isAccepted | integer | 1 | 0 or 1 | |
falseBid | integer | 1 | 0 or 1 | |
createdAt | date |
Flow Diagram for Old Book Shop System
Tools and Technologies Used
Technology/Domain: Java
Front-End: JSP, Html, CSS, JS, Bootstrap.
Server-side: Servlet.
Back-end: MYSQL.
Server: Tomcat 8.5.
Third-party APIs Used:
Mail API
Gmaps
Authorized.net
Contact to get the Source Code
Skype Id: jcodebun
Email: jcodebun@gmail.com
Note: If you need the source code you can contact Us. These are paid projects it will take 3,4 days to deliver after booking, We will provide complete source code and all the required things like Database and project reports with all the diagrams. Also, we have created a STEP by STEP configuration tutorial to help you in the configuration process.
If you find any kind of difficulties during the configuration, we will provide a complete project configuration guide remotely using any Desk or Zoom.