Tom Kroll

Learning about programming, reverse engineering, binary exploitation, and everything else I can about cybersecurity


Hotel Reservation

26 Dec 2024

This was the final project for my Advanced Java Programming course at WGU. Most of this application was already built ahead of time, but taught me a lot about front end frameworks and how they interact with backend applications and databases. I included a link to the repository instead of posting the code here because it is a full stack application with a lot of files.

This is an application for a fictional hotel created using a Spring framework with an Angular front end, Java back end, and a MySQL database for storing company and customer information. Multithreading was used to display welcome messages in English and French. This application was packaged using Docker to create a portable container.

Languages and Framework

Concepts

Requirements followed for this project

A. Create your subgroup and project in GitLab using the provided web link and the “GitLab How-To” web link by doing the following:

Note: You may commit and push whenever you want to back up your changes, even if a requirement is not yet complete.

Note: Wait until you have completed all the following prompts before you create your copy of the repository branch history.

B. Modify the Landon Hotel scheduling application for localization and internationalization by doing the following:

  1. Install the Landon Hotel scheduling application in your integrated development environment (IDE). Modify the Java classes of application to display a welcome message by doing the following:

a. Build resource bundles for both English and French (languages required by Canadian law). Include a welcome message in the language resource bundles.

b. Display the welcome message in both English and French by applying the resource bundles using a different thread for each language.

Note: You may use Google Translate for the wording of your welcome message.

  1. Modify the front end to display the price for a reservation in currency rates for U.S. dollars ($), Canadian dollars (C$), and euros (€) on different lines.

Note: It is not necessary to convert the values of the prices.

  1. Display the time for an online live presentation held at the Landon Hotel by doing the following:

a. Write a Java method to convert times between eastern time (ET), mountain time (MT), and coordinated universal time (UTC) zones

b. Use the time zone conversion method from part B3a to display a message stating the time in all three times zones in hours and minutes for an online, live presentation held at the Landon Hotel. The times should be displayed as ET, MT, and UTC.

C. Explain how you would deploy the Spring application with a Java back end and an Angular front end to cloud services and create a Dockerfile using the attached supporting document “How to Create a Docker Account” by doing the following:

  1. Build the Dockerfile to create a single image that includes all code, including modifications made in parts B1 to B3. Commit and push the final Dockerfile to GitLab.

  2. Test the Dockerfile by doing the following:

  1. Describe how you would deploy the current multithreaded Spring application to the cloud. Include the name of the cloud service provider you would use.

Note: Remember to commit and push your changes to GitLab.

D. Demonstrate professional communication in the content and presentation of your submission.

Repository Link

Hotel Reservation


Feedback is welcome and encouraged! Please leave a comment below: