A full-featured Hotel Management and Booking Web Application built with Spring Boot, Hibernate, and RESTful APIs.
It allows hotel admins to manage rooms, bookings, services, and customers — while guests can browse rooms, make reservations, and complete payments online.
- Manage hotels, rooms, and room types
- Track bookings and customer details
- Assign and manage employees
- Add and manage extra services (e.g., room service, laundry)
- Browse available rooms and check availability
- Make, view, and cancel bookings
- Manage profile and payment information
- Leave reviews for hotels or rooms
- Record and track payments for bookings
- Support for multiple payment methods
- Refund and cancellation handling
Hotel– Basic hotel infoRoom– Individual rooms with types and availabilityRoomType– Room category and base pricingUser– Base user account (roles: ADMIN, MANAGER, CUSTOMER)CustomerProfile– Extended info for customersBooking– Room reservation detailsPayment– Payment recordsEmployee– Staff managementService– Extra hotel services (spa, laundry, etc.)BookingService– Mapping between bookings and services
| Layer | Technology |
|---|---|
| Backend | Spring Boot (Web, Data JPA, Validation, Security) |
| Database | PostgreSQL / MySQL / H2 (for dev) |
| ORM | Hibernate |
| API | RESTful JSON endpoints |
| Build Tool | Maven / Gradle |
| Authentication | Spring Security with JWT |
| Frontend (optional) | React / Thymeleaf / Angular |
- Clone the repo
git clone https://github.com/<your-username>/hotel-management-system.git cd hotel-management-system