Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

15 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Hi, I'm Manoj Pandi ! πŸ‘‹

Welcome to the Hotel Room Reservation System!. This project is a full-stack web application built with Spring Boot and Thymeleaf, allowing users to manage hotel room reservations conveniently. With features such as user authentication, room reservation, and reservation management, this application provides a seamless experience for both users and hotel administrators.

Logo

TLCHotel Room Reservation System

The Hotel Room Reservation System is a full-stack web application built with Spring Boot and Thymeleaf that allows users to manage hotel room reservations. This application provides a convenient way for users to search for available rooms, make reservations, and view and cancel existing reservations through an intuitive user interface.

Features

  • User Authentication: Users can create accounts or log in using their credentials to access the reservation system.
  • Room Reservation: Users can search for available rooms based on their preferred dates and criteria. They can specify the check-in and check-out dates, number of persons, and room type to find suitable accommodations.
  • Reservation Management: Users can view their existing reservations and details such as check-in and check-out dates, total amount, and room information. They can also cancel reservations if their plans change.
  • Responsive Design: The application is designed to be responsive, ensuring a seamless user experience across various devices, including desktops, tablets, and smartphones.

FrontEnd

The frontend of the application is built using Thymeleaf, a template engine for server-side rendering of HTML pages. Thymeleaf allows for the dynamic generation of HTML content, enabling the display of dynamic data such as reservation details and room information.

BackEnd

The backend of the application is developed using Spring Boot, a Java-based framework for building web applications. Spring Boot provides features such as dependency injection, auto-configuration, and web support, making it ideal for developing robust and scalable web applications. The backend handles user authentication, room reservation logic, database interactions, and other business logic.

DataBase

The application uses MySQL as the relational database management system for storing user and reservation data. MySQL provides robust data storage and retrieval capabilities, ensuring data integrity and reliability.

Technologies Used

  • Spring Boot: Framework for building Java-based web applications, providing features such as dependency injection, auto-configuration, and web support.
  • Thymeleaf: Template engine for generating dynamic HTML content, allowing server-side rendering of web pages with Java objects.
  • MySQL: Relational database management system for storing user and reservation data, providing robust data storage and retrieval capabilities.
  • Docker: Containerization platform for packaging and deploying the application, ensuring consistency and portability across different environments.

Installation

Install my-project with SpringBoot Running Editors

Clone the Repository: Clone the repository to your local machine using the following command

git clone https://github.com/ManojPandi26/ManojPandi26-SpringBoot_webApplication.git

Build the Project: Build the project using Maven to compile the code and package it into an executable JAR file. Run the following command:

mvn clean package -DskipTests

Run the Application: Run the Spring Boot application by executing the JAR file generated in the target directory:

java -jar target/TLCRoomBooking-0.0.1-SNAPSHOT.jar

Screenshots

Login

Login

Register

Register

Forgot Password

Forgot Password

After Clicking Request Link in Email

After Clicking Request Link in Email

Home

Home

Home Bottom

Home Bottom

Rooms

Rooms

Booking

Booking

Confirmation

Confirmation

Reservation Success

Reservation success

Cancel Reservation

Cancel Reservation

Contact Us

Contact Us

Admin (In-progress)

Admin Dashboard

Admin Dashboard

Recent Details

Recent Details

Update Rooms

Update Rooms

Add Rooms

Add Rooms

Optimizations

  • Database Indexing: Use database indexes to improve the performance of frequently executed database queries, such as room searches and reservation retrievals. Identify and create indexes on columns that are commonly used in WHERE clauses and JOIN conditions.
  • Implement caching mechanisms to reduce the load on the application and database servers. Cache frequently accessed data, such as room availability and user sessions, using in-memory caches like Redis or caching solutions provided by Spring Cache
  • Optimize database queries by analyzing query execution plans and identifying opportunities for optimization. Use database profiling tools to monitor query performance and identify slow-performing queries that may benefit from optimization.
  • Configure connection pooling to efficiently manage database connections and improve application scalability. Use connection pooling libraries provided by your database driver or application server to reuse database connections and minimize connection overhead.
  • Minify and compress static resources such as HTML, CSS with Thymeleaf Template Engine to reduce page load times and minimize bandwidth usage. Use tools like Webpack or Gulp to automate the minification and compression process.

πŸš€ About Me

I am Manoj Pandi, a passionate software developer with a keen interest in web development and creating innovative solutions. I specialize in building scalable and user-friendly web applications using modern technologies and best practices.

πŸ›  Skills

Programming Languages

  • Java Advanced
  • C
  • HTML,CSS

Frameworks & Libraries

  • Spring Boot
  • Thymeleaf
  • Bootstrap

Database Management

  • MySql

Tools & Technologies

  • Docker
  • Maven
  • Spring Tools Suite
  • IntelliJ IDEA
  • Visual Studio Code

Roadmap

Current Version

  • Basic functionality for user authentication, room reservation, and reservation management.
  • Enhancements to user interface and user experience.
  • Bug fixes and performance improvements.
  • Integration with MySQL database for data persistence.

Upcoming Version

  • Dockerization of the application for deployment.

Support

For general inquiries or assistance, you can contact us via email at manojpandi680@gmail.com

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages