This project is about designing and implementing a Java hotel reservation application. The hotel reservation application will allow customers to find and book a hotel room based on room availability. This project demonstrates abilities to design classes using OOP, organize and process data with collections, and use common Java types.
The major components of the Hotel Reservation Application will consist of the following:
- CLI for the User Interface - Command Line Interface will be used so the user can enter commands to search for available rooms, book rooms, and so on.
- Java code - The second main component is the Java code itself—this is where business logic for the app resides.
- Java collections - For in-memory storage of the data needed for the app, such as the users, rooms, availability, and so on.
The app is separated into the following layers:
-
User interface (UI) - A main menu for the users who want to book a room, and an admin menu for administrative functions.
-
Resources - It will act as Application Programming Interface (API) to UI.
-
Services - Communicates with resources, and each other, to build the business logic necessary to provide feedback to UI.
-
Data models - Used to represent the domain used within the system (e.g., rooms, reservations, and customers).
This project was built on java v20.0.2 You need to have JDK installed to run this. Also IDE like IntelliJ or Vscode is required.
For Vscode, Java Language Pack extensions are required.
- Clone the repository
- Open project in IntelliJ or Vscode
- Go to src/HotelApplication.java file & run the
main()
function