Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/omkarjadhav98/yumcourt-servlet-management

This repository contains a Java-based web application using Servlets, JSP, and JDBC to manage an online food ordering system.
https://github.com/omkarjadhav98/yumcourt-servlet-management

html5 java-11 servlets webapp

Last synced: about 11 hours ago
JSON representation

This repository contains a Java-based web application using Servlets, JSP, and JDBC to manage an online food ordering system.

Awesome Lists containing this project

README

        

# 🍽️ YumCourt Servlet Management

**YumCourt-Servlet-Management** is a Java-based web application that manages an online food ordering system. This project uses Java Servlets, JSP, and JDBC for backend processing, along with HTML and CSS for the frontend interface.

## 📑 Table of Contents
- [📖 Introduction](#-introduction)
- [✨ Features](#features)
- [🛠️ Technologies Used](#technologies-used)
- [⚙️ Installation](#installation)
- [🔧 Configuration](#configuration)
- [🚀 Running the Application](#running-the-application)
- [💡 Usage](#usage)
- [🤝 Contributing](#contributing)
- [📜 License](#license)
- [📬 Contact](#contact)

## 📖 Introduction
The **YumCourt-Servlet-Management** project is designed to facilitate an online food ordering system where customers can browse restaurant menus, place orders, and have their food delivered by delivery executives. The system supports CRUD operations for managing customers, restaurants, menus, orders, addresses, and more.

## ✨ Features
- 📍 Address Management: Manage customer delivery addresses
- 👤 Customer Management: Add, update, and delete customer details.
- 🍴 Restaurant Management: Manage restaurant information and menus.
- 🛒 Order Management: Place, update, and cancel orders.
- 🚚 Delivery Management: Assign and track delivery executives for orders.

## 🛠️ Technologies Used

- ![Java](https://img.shields.io/badge/Java-007396?style=for-the-badge&logo=java&logoColor=white) Core programming language.
- ![Servlets](https://img.shields.io/badge/Servlets-FFCC00?style=for-the-badge&logo=apache&logoColor=black) Used for handling HTTP requests and responses.
- ![JDBC](https://img.shields.io/badge/JDBC-003B57?style=for-the-badge&logo=java&logoColor=white) For database connectivity and operations.
- ![HTML5](https://img.shields.io/badge/HTML5-E34F26?style=for-the-badge&logo=html5&logoColor=white) Frontend design and layout.
- ![Maven](https://img.shields.io/badge/Maven-C71A36?style=for-the-badge&logo=apache-maven&logoColor=white) Build automation tool.
- ![Git](https://img.shields.io/badge/Git-F05032?style=for-the-badge&logo=git&logoColor=white) Version control system.
- ![IntelliJ IDEA](https://img.shields.io/badge/IntelliJ%20IDEA-000000?style=for-the-badge&logo=intellij-idea&logoColor=white) Preferred IDE for development.
- ![MySQL](https://img.shields.io/badge/MySQL-00618A?style=for-the-badge&logo=mysql&logoColor=white) Database for storing application data.

## ⚙️ Installation
### Prerequisites
- ☕ Java 8 or higher
- 🧰 Maven 3.6.0 or higher
- 🗄️ MySQL 5.7 or higher
- 💻 IntelliJ IDEA (optional, but recommended)

### Steps
1. **Clone the repository**:
```bash
git clone https://github.com/OmkarJadhav98/yumcourt-servlet-management.git
cd yumcourt-servlet-management
2. **Configure the database**:
- Create a MySQL database named yumcourt_db.
- Run the provided SQL script to create the necessary tables.
- Update the database connection details in `src/main/resources/db.properties`.

3. **Build the project using Maven**:
```bash
mvn clean install
```
4. **Deploy the application**:
- Copy the generated WAR file to the `webapp` directory of your servlet container (e.g., Apache Tomcat).
- Start your servlet container.

## 🔧 Configuration
### Database Configuration
Update the following properties in `src/main/resources/db.properties`:
```properties
db.url=jdbc:mysql://localhost:3306/yumcourt_db
db.username=root
db.password=spartans@9922
```

### Servlet Configuration
Ensure that the `web.xml` file is properly configured to map servlets and configure their initialization parameters.

## 🚀 Running the Application
Once the project is built and deployed:
1. Open a web browser and navigate to `http://localhost:8080/yumcourt-servlet-management`.
2. Use the available forms to manage customers, restaurants, menus, orders, and more.

## 💡 Usage
### Accessing the Application
- 📍 Address Management: Navigate to /address_form.html to manage addresses.
- 👤 Customer Management: Navigate to /customer_form.html to manage customers.
- 🍴 Restaurant Management: Navigate to /restaurant_form.html to manage restaurants.
- 🛒 Order Management: Navigate to /order_form.html to manage orders.
- 🚚 Delivery Management: Navigate to /delivery_executive_form.html to manage delivery executives.

### Adding a New Customer
1. Open `order_form.html`.
2. Select the customer, restaurant, and menu items.
3. Assign a delivery executive.
4. Click "Place Order" to submit.

### Placing an Order
1. Open `order_form.html`.
2. Select the customer, restaurant, and menu items.
3. Assign a delivery executive.
4. Click "Place Order" to submit.

## 🤝 Contributing
Contributions are welcome! Please follow these steps:

1. Fork the repository.
2. Create a new branch: git checkout -b feature-name.
3. Make your changes and commit them: git commit -m 'Add new feature'.
4. Push to the branch: git push origin feature-name.
5. Submit a pull request.

## 📜 License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

## 📬 Contact
If you have any questions, suggestions, or issues, feel free to reach out to me:

- **Email:** [[email protected]](mailto:[email protected])
- **GitHub:** [OmkarJadhav98](https://github.com/OmkarJadhav98)