Skip to content

venky4378/Atm-Web-based-Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 

Repository files navigation

🏧 ATM Banking System

A Java web-based ATM Banking System developed using Servlets, JSP, JDBC, and MySQL. This project simulates core banking operations, allowing users to create an account, log in securely, deposit and withdraw money, check their balance, and manage their account through a simple web interface.


📖 Overview

The objective of this project is to demonstrate the implementation of a banking application using Java web technologies while following the MVC (Model-View-Controller) architecture. It provides hands-on experience with database connectivity, session management, CRUD operations, and web application development.


✨ Features

  • User Registration
  • Secure Login using Account Number and PIN
  • Deposit Money
  • Withdraw Money
  • View Updated Account Balance
  • Delete Account
  • Logout with Session Management
  • Input Validation and Error Handling

🛠️ Technologies Used

Technology Purpose
Java Backend Development
Servlets Request Handling
JSP User Interface
JDBC Database Connectivity
MySQL Database
Apache Tomcat Web Server
HTML5 Frontend Structure
CSS3 Styling
Eclipse IDE Development Environment

📂 Project Structure

ATM-Web-based-Project
│
├── src
│   ├── com.controller
│   │      └── ATMServlet.java
│   │
│   ├── com.dao
│   │      ├── AccountDAO.java
│   │      └── DBConnection.java
│   │
│   └── com.model
│          └── Account.java
│
├── WebContent
│   ├── index.jsp
│   ├── register.jsp
│   ├── dashboard.jsp
│   └── css
│
└── README.md

⚙️ Database Configuration

Create a MySQL database:

CREATE DATABASE batch71;

Create the accounts table:

CREATE TABLE accounts (
    account_number VARCHAR(20) PRIMARY KEY,
    account_holder VARCHAR(100) NOT NULL,
    pin VARCHAR(20) NOT NULL,
    balance DOUBLE NOT NULL
);

Update your database credentials in DBConnection.java:

private static final String URL = "jdbc:mysql://localhost:3306/batch71";
private static final String USERNAME = "root";
private static final String PASSWORD = "root";

🚀 How to Run

  1. Clone the repository
git clone https://github.com/venky4378/Atm-Web-based-Project.git
  1. Import the project into Eclipse.

  2. Configure Apache Tomcat.

  3. Create the MySQL database and table.

  4. Update the database credentials.

  5. Run the project on the Tomcat server.

  6. Open your browser and visit:

http://localhost:8080/ATM-Web-based-Project

📚 Concepts Applied

  • Object-Oriented Programming (OOP)
  • MVC Architecture
  • JDBC Connectivity
  • CRUD Operations
  • Session Management
  • Exception Handling
  • DAO Design Pattern
  • PreparedStatement
  • Java Servlets
  • JSP

📌 Future Improvements

  • Password Encryption (BCrypt)
  • Transaction History
  • Fund Transfer Between Accounts
  • Admin Dashboard
  • Spring Boot REST APIs
  • React Frontend
  • Online Banking Features

👨‍💻 Author

Venkayya Swamy Ch


⭐ Support

If you found this project helpful, please consider giving it a ⭐ on GitHub.

About

Java Web-based ATM Banking System using Servlets, JSP, JDBC, MySQL, and MVC Architecture.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages