This project is a Hotel Booking Application developed using ReactJS for the front-end and Spring Boot for the back-end. The application provides two roles: Admin and User. Each role has specific functionalities as described below.
Hotel.Booking.Application.mp4
View all bookings
Cancel any booking
Add new rooms
Update room details
Delete rooms
Book a room
View their bookings
Front-end: ReactJS, Redux, Axios Back-end: Spring Boot, Spring Security, JPA, Hibernate Database: MySQL
Node.js npm or yarn Java (JDK 11 or above) MySQL
cd frontend/Hotel-booking-application
npm install
npm start
cd backend/HotelBookingApplication
spring.datasource.url=jdbc:mysql://localhost:3306/hotel_booking
spring.datasource.username=your_username
spring.datasource.password=your_password
spring.jpa.hibernate.ddl-auto=update
./mvnw clean install
./mvnw spring-boot:run
Register as a user or log in if you already have an account. Admins can access the admin dashboard to manage rooms and bookings. Users can browse available rooms and make bookings.
GET /api/admin/bookings - View all bookings DELETE /api/admin/bookings/{bookingId} - Cancel a booking POST /api/admin/rooms - Add a new room PUT /api/admin/rooms/{roomId} - Update room details DELETE /api/admin/rooms/{roomId} - Delete a room
POST /api/user/bookings - Book a room GET /api/user/bookings - View user bookings