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.
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.
- 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
| 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 |
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
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";- Clone the repository
git clone https://github.com/venky4378/Atm-Web-based-Project.git-
Import the project into Eclipse.
-
Configure Apache Tomcat.
-
Create the MySQL database and table.
-
Update the database credentials.
-
Run the project on the Tomcat server.
-
Open your browser and visit:
http://localhost:8080/ATM-Web-based-Project
- Object-Oriented Programming (OOP)
- MVC Architecture
- JDBC Connectivity
- CRUD Operations
- Session Management
- Exception Handling
- DAO Design Pattern
- PreparedStatement
- Java Servlets
- JSP
- Password Encryption (BCrypt)
- Transaction History
- Fund Transfer Between Accounts
- Admin Dashboard
- Spring Boot REST APIs
- React Frontend
- Online Banking Features
Venkayya Swamy Ch
- GitHub: https://github.com/venky4378
- LinkedIn: https://www.linkedin.com/in/swamy-ch/
If you found this project helpful, please consider giving it a ⭐ on GitHub.