Introduction
The Hotel Booking Management System is a comprehensive desktop application designed
to manage all aspects of hotel operations. Built with Java Swing, it provides an intuitive interface for
managing reservations, rooms, guests, accounting, revenue management, and administrative tasks.
Key Features
- Multi-user system with role-based access control
- Complete booking lifecycle management
- Dynamic pricing with revenue management tools
- Accounting module with invoicing and payment tracking
- Automated daily closures at midnight
- Multi-language support (English, German, Italian)
- Comprehensive reporting with multiple export formats
Installation
Follow these steps to install and configure the Hotel Booking System.
Prerequisites
- Java Runtime Environment (JRE): Java 17 or higher
- Database: MySQL 8.0+ or PostgreSQL 12+
- Administrative Access: To configure the database
Database Setup
Run the SQL script located in the `database.sql` file:
mysql -u root -p < database.sql
The script automatically creates the database and includes sample data for
testing the application.
Login Panel
The entry point to the application with secure authentication.
Features:
- Secure login with username and password
- Password encryption (BCrypt hashing)
- Language selection (English, German, Italian)
- Database configuration dialog
Dashboard Panel
Central overview of daily hotel operations and key metrics.
Features:
- Real-time statistics display
- Today's check-ins list
- Today's check-outs list
- Auto-refresh capability
Booking Panel
Complete booking lifecycle management from reservation to checkout.
Features:
- Create new bookings
- Modify existing bookings
- Check-in and check-out processes
- Checkout and payment processing
- Real-time booking status tracking
- Guest notes and special requests
Room Panel
Management of room inventory, availability, and housekeeping status.
Features:
- View room availability calendar
- Assign rooms to guests
- Update room status (Clean, Dirty, Maintenance)
- Manage room types and configurations
- Set room capacity and amenities
- Block rooms for maintenance or events
Guest Panel
Gestione degli ospiti registrati, inclusi dati personali, cronologia soggiorni e
preferenze.
Features:
- Aggiungi nuovo ospite
- Modifica informazioni ospite
- Ricerca avanzata ospiti
- Cronologia soggiorni
Key Features
Overview of the core functionalities and capabilities of the Hotel Booking
System.
- Multi-user system with role-based access control
- Complete booking lifecycle management
- Dynamic pricing with revenue management tools
- Accounting module with invoicing and payment tracking
- Automated daily closures at midnight
- Multi-language support (English, German, Italian)
- Comprehensive reporting with multiple export formats
Company Panel
Manage corporate clients and business accounts with dedicated features.
Features:
- Create company profiles
- VAT number registration
- Corporate discount rate settings
- Associate guests with companies
- Automatic invoice generation with company details
Accounting Panel
Financial management and transaction tracking.
Features:
- Track all financial transactions
- Generate and manage invoices
- Record payments and refunds
- Log operational expenses
- Generate financial reports
- Handle VAT calculations
Invoice Panel
Dedicated invoice management with advanced features.
Features:
- Automatic invoice creation from bookings
- Export to PDF with professional formatting
- VAT calculation per line item
- Invoice archive and history
Payment Panel
Dedicated payment tracking and processing.
Features:
- Multiple payment methods (Cash, Card, Transfer)
- Partial payment support
- Refund management
- Payment tracking linked to invoices
Report Panel
Advanced reporting and export capabilities.
Report Types:
- Invoice Report
- Payment Report
- Booking Report
- Occupancy Report
- Revenue Report
Revenue Panel
Dynamic pricing and revenue management tools.
Features:
- Monthly calendar view of prices
- Bulk price updates for date ranges
- Price rules creation and management
- Revenue forecasting
Housekeeper Panel
Room status management and cleaning coordination.
Features:
- Real-time room status overview
- Priority cleaning list
- Room cleaning logs and notes
- Maintenance request creation
Admin Panel
System administration and configuration.
Main Sections:
- User Management
- Room Types Configuration
- Price Rules Management
- Hotel Settings
- External Services (OTA Integration)
Security
Security features and best practices.
- Password encryption using BCrypt
- Role-based access control (RBAC)
- Session management and timeouts
- Audit trails for critical operations
Frequently Asked Questions
Q: The database won't connect?
A: Check that MySQL/PostgreSQL service is running and credentials are correct. Verify
the database name is `hotel_booking_system`.
Q: Which Java version should I use?
A: Java 17 or higher (Java 21 recommended for best performance).
Q: How do I create a backup?
A: Use your database's native backup tools (mysqldump for MySQL, pg_dump for
PostgreSQL).
Support
Resources and troubleshooting guides.
Common Issues:
- Application won't start
- Database connection error
- Slow performance
- Login fails