Skip to content

jainam-04/ATM-Management-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ATM Management System

This is a simple ATM Management System built using Java AWT, Swing, JDBC for database connectivity, and MySQL for data storage. The application allows users to simulate basic ATM functionalities such as account creation, withdrawal, deposit, balance inquiry, and more.

Table of Contents

Features

  • Login Authentication: User can log in with their credentials.
  • Account Management: Create, delete, and manage user accounts.
  • Balance Inquiry: Check account balance.
  • Withdrawal & Deposit: Perform cash withdrawal and deposit operations.
  • Transaction History: View history of all transactions.
  • Fast Cash: Withdraw a predefined amount of cash in single click.
  • Pin Change: Users can update their atm pin to enhance account security.
  • Exit: Log out and exit the system securely.

Technologies Used

  • Java AWT and Swing: For creating the user interface.
  • JDBC (Java Database Connectivity): For database connectivity with MySQL.
  • MySQL: For data storage and management.

Setup Instructions

Prerequisites

  • Java Development Kit (JDK) installed.
  • MySQL installed and running.
  • A MySQL client or command line to create and manage the database.

Steps

  1. Clone the repository:

    git clone https://github.com/jainam-04/ATM-Management-System.git
  2. Set up the MySQL database:

  • Create a new database in MySQL:

    CREATE DATABASE atm_management;
  • Use the following schema to create the necessary tables for the system:

      USE atm_management;
    
      CREATE TABLE bank (
          pin VARCHAR(10) NOT NULL,
          date PRIMARY KEY VARCHAR(50) NOT NULL,
          type VARCHAR(20) NOT NULL,
          amount VARCHAR(10) NOT NULL
      );
    
      CREATE TABLE login (
          formNo PRIMARY KEY VARCHAR(10) NOT NULL,
          cardNo VARCHAR(20) NOT NULL,
          pin VARCHAR(10) NOT NULL
      );
    
      CREATE TABLE signup (
          formNo PRIMARY KEY VARCHAR(10) NOT NULL,
          name VARCHAR(45) NOT NULL,
          fathername VARCHAR(45) NOT NULL,
          dob VARCHAR(20) NOT NULL,
          gender VARCHAR(10) NOT NULL,
          email VARCHAR(50) NOT NULL,
          marriedStatus VARCHAR(10) NOT NULL,
          address VARCHAR(50) NOT NULL
          city VARCHAR(20) NOT NULL,
          pin VARCHAR(10) NOT NULL,
          state VARCHAR(20) NOT NULL
      );
    
    CREATE TABLE signup2 (
          formNo PRIMARY KEY VARCHAR(10) NOT NULL,
          religion VARCHAR(20) NOT NULL,
          category VARCHAR(20) NOT NULL,
          income VARCHAR(10) NOT NULL,
          education VARCHAR(20) NOT NULL,
          occupation VARCHAR(20) NOT NULL,
          panNo VARCHAR(20) NOT NULL,
          aadharNo VARCHAR(15) NOT NULL,
          seniorCitizen VARCHAR(10) NOT NULL,
          existingAccount VARCHAR(10) NOT NULL
    );
    
    CREATE TABLE signup3 (
          formNo PRIMARY KEY VARCHAR(10) NOT NULL,
          accountType VARCHAR(30) NOT NULL,
          cardNo VARCHAR(20) NOT NULL,
          pin VARCHAR(10) NOT NULL,
          facility VARCHAR(100) NOT NULL
    );
  1. Configure database connection:

    • In your Java project, update the JDBC connection settings in your code to connect to the MySQL database.

       String url = "jdbc:mysql://localhost:3306/atm_management";
       String username = "your_mysql_username";
       String password = "your_mysql_password";
  2. Compile and run the project:

    • Use your IDE (like Eclipse or IntelliJ IDEA) or the terminal to compile and run the project.

        javac -cp ".:mysql-connector-java-8.0.XX.jar" ATMSystem.java
        java -cp ".:mysql-connector-java-8.0.XX.jar" ATMSystem

Usage

  1. Login: Enter your account number and PIN to log in.
  2. Balance Inquiry: View your current balance.
  3. Withdrawal: Withdraw an amount from your account (ensure sufficient balance).
  4. Deposit: Deposit an amount to your account.
  5. Transaction History: View all past transactions.
  6. Log out: Securely exit the system.

Screenshots

  1. Login Screen

    Login

  2. Main Screen

    MainScreen

  3. Deposit

    Deposit

  4. Withdrawal

    Withdrawal

  5. Balance

    Balance

  6. Mini-Statement

    MiniStatement

  7. Fast Cash

    FastCash

  8. Change Pin

    ChangePin

Contributing

Contributions are welcome! Please open an issue or submit a pull request for any bugs or features.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages