Project Summary
Full-stack Java web application featuring authentication and a reservation system using Java Servlets, JavaServer Pages (JSP), MySQL, Apache Tomcat, and MVC architecture. Includes server-side validation, session management, and database-backed reservation workflows.
Moffat Bay Lodge Website
A full-stack reservation system with authentication, responsive design, and MySQL database integration.
Project Overview
This team project delivers a complete website for the fictional Moffat Bay Lodge. Visitors can explore attractions, register and log in, make reservations, and look up past bookings. Reservations and user accounts are stored in a MySQL database with Java-based backend services running on Apache Tomcat.
Key Features
- Landing Page: Marketing-focused entry experience.
- About & Contact Pages: Clear lodge info and contact details.
- Attractions Page: Image carousel showcasing activities and highlights.
- Authentication: Registration & login with validation and password hashing.
- Reservation System: Select room type, dates, guests, and confirm bookings.
- Reservation Lookup: Search reservations by ID or email.
Technical Stack
Frontend
HTML5 CSS3 JavaScriptBackend
Java Servlets JavaServer Pages (JSP) Apache TomcatDatabase
MySQLSecurity
Regex Validation Password Hashing Session ManagementLeadership & Contributions
I served as Team Lead, contributing to planning, servlet development, database design, and testing. I coordinated GitHub workflows, implemented reservation logic, and documented sprint progress.
- Led a 5-person team through planning, implementation, testing, and delivery using Agile workflows.
- Built reservation flows (date selection, guest count, room selection, confirmation) backed by MySQL.
- Implemented server-side validation and session-based authentication using Java Servlets (REST-style request handling).
- Improved project quality with consistent documentation, clear user paths, and repeatable test scenarios.
Video Demo
Watch a quick walkthrough of the Moffat Bay Lodge Website in action: