A comprehensive Java-based banking system with a graphical user interface (GUI) that simulates basic banking operations. This application provides separate interfaces for customers and administrators to manage banking activities efficiently, using file handling for data persistence.
-
Account Management
- Create new bank account
- Activate account
- Delete existing account
- Login to account
-
Transaction Operations
- Deposit money
- Withdraw money
- Transfer money to other accounts
- Check account balance
-
Loan Management
- Apply for loans
- View loan status
- Pay loan installments
- Check payable loan amount
-
Secure Admin Panel
- Protected login system
- Full administrative control over banking operations
-
Account Management
- View and manage account details
- Provide checkbook facility
- Manage account statuses
-
Interest Rate Management
- Set and update bank interest rates
- Modify interest policies
- Password protection
- Input validation
- CNIC verification
- Phone number verification
- Secure file handling for data storage
- Java
- Swing (for GUI)
- File Handling (File I/O) for data persistence
- Java Development Kit (JDK) 8+
- Minimum 2GB RAM
- Windows/Linux/MacOS operating system
git clone https://github.com/yourusername/bank-management-system.git cd bank-management-system javac src/com/company/*.java java src/com/company/Runner - Launch the application
- Select "ACCOUNT HOLDER" from the main menu
- Choose from available options:
- Login to existing account
- Create new account
- Activate account
- Delete account
- Launch the application
- Select "ADMIN" from the main menu
- Login with admin credentials:
- Default Admin ID:
1122 - Default Password:
abd
- Default Admin ID:
- Access admin features:
- Update interest rates
- Manage checkbook requests
- View admin information
src/com/company/
├── Account.java # Account class definition
├── AccountFileOperations.java # Account data management
├── Admin.java # Admin class definition
├── AdminFileOperations.java # Admin data management
├── GUI Classes # Various GUI implementation files
└── Runner.java # Main application entry point
- Account information is stored in
Accounts.txt - Admin data is stored in
Admin.txt - File handling & object serialization for data storage
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
- Java Swing for GUI components
- File Handling (File I/O) for data persistence
- Object-Oriented Programming (OOP) Principles
For support, email rafaycs21@gmail.com or create an issue in the repository.
- Abdul Rafay
- 1.0.0
- Initial Release
- Basic banking features
- Admin panel implementation
This project is licensed under the MIT License. See the LICENSE file for details.
