Skip to content

sybercingh/Smart-Bank-Management-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🏦 Smart Bank Management System

A console-based banking management system built using Java.

This project simulates core banking operations such as account creation, deposits, withdrawals, online transfers, transaction history, password management, and persistent data storage using file handling.


🚀 Features

  • 🏦 Create Bank Account
  • 🔐 Secure Login System
  • 💰 Deposit & Withdraw Money
  • 🔄 Online Money Transfer
  • 📜 Transaction History
  • 🔑 Change Password
  • 💾 File-Based Data Persistence
  • ⚠️ Custom Exception Handling
  • 🧠 Auto Account Number Generation

🛠️ Tech Stack

  • Java
  • OOP
  • Collections Framework
  • File Handling
  • Exception Handling
  • ArrayList
  • BufferedReader / BufferedWriter

🧠 Concepts Used

  • Encapsulation
  • Constructors
  • Static Members
  • Custom Exceptions
  • Object Persistence
  • CSV Data Handling
  • Transaction Management
  • Modular Programming

📂 Project Structure

Smart-Bank-Management-System/
│
├── Main.java
├── BankAccount.java
├── InsufficientBalanceException.java
├── accounts.txt
└── README.md

▶️ Functionalities

👤 Account Management

  • Create Account
  • Secure Login
  • Change Password

💳 Banking Operations

  • Deposit
  • Withdraw
  • Transfer Money
  • Check Balance

📜 Transaction System

  • Complete transaction history
  • Sender & receiver transaction tracking

💾 Persistent Storage

  • Accounts automatically saved into file
  • Data reloads on next execution

⚠️ Exception Handling

Custom exception used:

InsufficientBalanceException

Handles:

  • Low balance withdrawals
  • Invalid transfers

▶️ How to Run

  1. Clone the repository
  2. Open in IntelliJ IDEA / VS Code
  3. Run Main.java

🌱 Learning Outcomes

This project helped me understand:

  • Real-world application flow
  • OOP implementation
  • File handling and data persistence
  • Transaction logic
  • Exception handling
  • Modular architecture design

👨‍💻 Author

Prakhar Singh GitHub: https://github.com/sybercingh

About

A console-based banking management system built using Java, OOP, Collections Framework, File Handling, and transaction management logic.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages