Case study · Website & Mobile App / Mobile Web Project

Movie Rental Web App

Netflix-style Academic Project

A connected web and Android movie-rental platform with authentication, role-based access, catalog search, personal queues, viewing history, and shared MySQL data.

ACADEMIC PROJECTWeb and Android
Old Netflix Movie Rental Web App project icon.
Role
Developer
Platform
Web and Android
Team
2 Developers on the Team

Technologies

JavaJSPJava ServletsMySQLJSONAndroidHTMLCSSJavaScript

Project images

Open an image to zoom in and explore the details.

20 images

01

Overview

This academic full-stack project implemented a movie-rental experience across a Java and JSP website and a native Android application. Both clients use server endpoints and a shared MySQL database for accounts, permissions, movie information, queues, and viewing history.

02

Problem & goal

Create a consistent browsing and account experience across web and mobile while practicing authentication, role-based authorization, relational data modeling, server communication, and shared application state.

03

Solution

Java servlets and data-access classes expose authentication, search, queue, history, and account workflows backed by MySQL. The Android client communicates with those endpoints over HTTP, parses JSON responses, stores local session preferences, and presents mobile views for browsing, searching, managing a queue, and reviewing watched movies.

04

Key features

  • Account authentication and session management
  • Role-based access for public, user, and administrator pages
  • Movie catalog with details, artwork, and metadata
  • Search by movie title and genre
  • Personal movie queue with add, return, watched, and clear actions
  • Viewing-history workflow
  • Native Android client with shared web data
  • Relational MySQL schema for users, roles, movies, pages, and queues

05

Enrique's contribution

  • Web and Android interface implementation
  • Java, JSP, servlet, and data-access workflows
  • Android HTTP and JSON integration
  • Relational database schema and MySQL integration
  • Search, queue, history, and account functionality
  • System diagrams, documentation, and testing

06

Technical considerations

  • Keeping queue and history data consistent across the website, Android client, servlets, and database
  • Managing authenticated sessions and role-based page permissions
  • Performing network requests outside the Android interface thread and handling JSON responses
  • Preserving relational integrity among users, roles, pages, movies, and queue records

07

What was learned

The project strengthened Enrique's understanding of full-stack Java architecture, Android-to-server communication, relational database design, role-based access, and the coordination required to keep web and mobile workflows aligned.