// Project_02 — Java / Desktop
Java Banking
Application
A desktop banking simulator built with Java Swing to master OOP principles and event-driven GUI programming — with plans to migrate to JavaFX.
Overview
About the Project
Built to solidify my understanding of Object-Oriented Programming in Java, this desktop banking application simulates core financial operations with a fully interactive Java Swing GUI. The project demonstrates professional software architecture patterns, following the Model-View-Controller (MVC) design pattern to keep business logic cleanly separated from the presentation layer.
The application features user account management, secure login validation, deposit/withdrawal transactions, and a complete transaction history tracker. Every operation is validated and logged, providing users with a realistic banking experience. This project was instrumental in deepening my understanding of event-driven programming, Swing components, and how to structure maintainable desktop applications.
Preview
Screenshots
Features
What It Does
- Comprehensive account creation and login system with form validation
- Full-featured deposit and withdrawal operations with real-time balance updates
- Transaction history displayed in a dynamic, scrollable table with sorting
- Clean MVC architecture with separate Model, View, and Controller layers
- Persistent data handling ensuring account information survives application restarts
- Professional Swing UI with custom components and event listeners
- Future roadmap: Migration to JavaFX for modern styling and enhanced visuals