A simple console-based Hotel Reservation System built using Java, JDBC, and MySQL. This project allows users to search rooms, book reservations, make payments, and cancel bookings.
- Search available rooms by category (Standard / Deluxe / Suite)
- Book a room with customer details
- Simulate payment process
- Cancel reservation (only after payment)
- Database connectivity using MySQL
- Java (Core)
- JDBC
- MySQL
- OOP Concepts
-
Clone the repository:
git clone https://github.com/your-username/hotel-reservation-system.git
-
Create database:
CREATE DATABASE hotel_reservation;
-
Create tables:
CREATE TABLE rooms ( room_id INT PRIMARY KEY AUTO_INCREMENT, room_number VARCHAR(10), category VARCHAR(20), price DOUBLE, is_available BOOLEAN ); CREATE TABLE reservations ( reservation_id INT PRIMARY KEY AUTO_INCREMENT, customer_name VARCHAR(100), room_id INT, check_in DATE, check_out DATE, payment_status VARCHAR(20) );
-
Update DB credentials in
DatabaseConnection.java -
Add MySQL Connector JAR
-
Run
Main.java
1. Search available rooms
2. Make Reservation
3. Simulate payment
4. Cancel Reservation
5. Exit
π Future Improvements GUI using JavaFX / Swing User authentication system Online payment integration Booking history tracking Admin panel
hotel-reservation-system/
β
βββ db/
β βββ DatabaseConnection.java # Handles database connection
β
βββ model/
β βββ Room.java # Room entity (room number, price)
β
βββ service/
β βββ RoomService.java # Handles room-related operations
β βββ ReservationService.java # Handles booking, payment, cancellation
β
βββ Main.java # Entry point (User Interface)
β
βββ README.md # Project documentation
- Rooms become unavailable after booking
- Payment is required before cancellation
- Canceling a reservation frees the room again
Md Ashif Ansari