RentalDVD
Role: Desktop Application Developer • Year: 2025
RentalDVD is a desktop application I engineered using Java, Java Swing, and MySQL. It automates movie inventory tracking, member registration, multi-item loan checkouts, return date calculations, late fee penalties, and compiles formal PDF reports using JasperReports.
The Problem Context
Traditional VCD/DVD rental shops relied on manual paper logs for movie catalog tracking and member loans, leading to lost inventory, uncollected late fees, and slow report generation.
The Engineering Solution
I developed a native Java desktop application with automated ID generation, JCalendar date pickers, overdue loan verification, multi-item loan checkout tables, automatic late fee calculation, and JasperReports PDF generation.
Desktop GUI
Java Swing (Nimbus L&F) & JCalendarBusiness & DAO Logic
Native Java Controllers & ConfigDB HelperRelational DB
MySQL Data Store via JDBCReport Engine
JasperReports & iText PDF FrameworkImplementation Highlights
Designed normalized MySQL database schema for members, films, and loan transactions.
Developed ConfigDB.java helper handling JDBC connections and dynamic JTable data binding.
Engineered multi-item rental transaction checkout with automated overdue loan checks and late fee calculations.
Integrated JasperReports framework with iText for compiling PDF reports from JRXML templates.
Implemented auto-numbering ID generators for Members, Films, and Loan records.
Measurable Results
- Automated film loan checkouts, return date tracking, and overdue fine calculations.
- Eliminated manual catalog search delays through instant JTable filtering.
- Enabled one-click PDF report compilation for member databases and loan histories.
Key Lessons Learned
- Decoupling database access logic into a central helper class greatly simplifies Swing GUI development.
- Pre-formatted report compilation engines like JasperReports deliver cleaner PDF exports than custom canvas drawing.