RevShop is a fully functional e-commerce website built using Java, JSP (JavaServer Pages), Servlets, SQL, HTML, CSS, and other related technologies. This project aims to provide a comprehensive platform for online shopping, offering features such as product browsing, user authentication, shopping cart management, order processing, and more. It is designed to serve as a learning project for understanding the integration of front-end and back-end technologies in a full-stack Java application.
As a buyer, you will be able to:
- Register on the platform: Create a new account with your email and password.
- Login into the application: Access your account using your email and password.
- View product details: See images, prices, descriptions, and user reviews for each product.
- Browse products: Search for products by category or keywords.
- Manage Cart: Add or remove products from the cart and specify the desired quantity.
- Checkout: Enter shipping and billing information to complete your purchase.
- Order Notifications: Receive email notifications when an order is placed.
- Order History: View a record of all your past orders.
- Product Reviews: Leave reviews for products you’ve purchased.
- Save Favorites: Save products as favorites for easy access later.
- Make Payments: Use the integrated payment gateway to complete your transactions.
As a seller, you will be able to:
- Register as a seller: Sign up with your email, password, and business details.
- Login into the application: Access your seller account using your email and password.
- Manage Inventory: Keep track of your product inventory and update it as needed.
- Add New Products: List new products by providing the price, description, and other details.
- Order Management: View orders placed by buyers and manage them.
- Order Notifications: Receive email notifications whenever a user places an order.
- Discount Management: Set a discounted price along with the maximum retail price (MRP).
- View Product Reviews: See reviews left by buyers for your products.
- Low Stock Alerts: Get web notifications when a product’s quantity falls below a set threshold (threshold set by the seller).
- Java: Core language for server-side logic.
- JSP (JavaServer Pages): For dynamic web content and UI rendering.
- Servlets: For handling HTTP requests and responses.
- SQL: For database management and querying.
- HTML: Markup language for structuring web pages.
- CSS: Styling for web pages to ensure a responsive and visually appealing UI.
- JavaScript: For client-side interactions and dynamic behavior.
- MySQL: Relational database management system for storing and managing data.
- src/: Contains all the Java source files, including Servlets and utility classes.
- web/: Contains JSP files, HTML templates, CSS stylesheets, and JavaScript files.
- WEB-INF/: Configuration files, including
web.xml
for servlet mapping and application settings. - lib/: External libraries and dependencies required for the project.
- sql/: Database scripts for creating tables and populating initial data.
- JDK (Java Development Kit) 8 or higher
- Apache Tomcat (or any other servlet container)
- MySQL Database Server
- IDE (Eclipse, IntelliJ IDEA, or NetBeans)
- Clone the Repository:
git clone https://github.com/your-username/RevShop.git
- Import the Project:
- Open your IDE and import the project as a Maven/Gradle project.
- Create a new MySQL database.
- Run the SQL scripts provided in the
sql/
directory to create the required tables and populate initial data.
- Update the database connection settings in the
dbconfig.properties
file located in theWEB-INF
directory.
- Deploy the project to your Apache Tomcat server.
- Start the Tomcat server and navigate to
http://localhost:8080/RevShop
to access the application.
- Register for a new account or log in with existing credentials.
- Browse products, add items to the shopping cart, and proceed to checkout.
- View and manage orders from the user dashboard.
- Access the admin panel to manage users, products, and orders.
- Add new products, update existing ones, or remove products from the catalog.
Contributions are welcome! Please fork this repository and submit a pull request for any bug fixes or feature enhancements. Make sure to follow the project's coding guidelines and provide clear commit messages.
This project is licensed under the Unlicense. See the LICENSE file for details.