A simple yet functional banking web application built using Java Servlets, JSP, and MySQL. It allows users to create bank accounts, view balances, deposit, withdraw, and transfer funds.
- User Authentication (Login & Register)
- Account Creation with Unique Account Number
- View Account Balance & Details
- Deposit & Withdraw Money
- Transfer Money to Another Account
- Session Management
- MySQL Database Integration
BankingSystem/ │── src/ │ └── com.bank/ │ ├── DBConnection.java │ ├── RegisterServlet.java │ ├── LoginServlet.java │ ├── AccountServlet.java │ ├── DepositServlet.java │ ├── WithdrawServlet.java │ ├── TransferServlet.java │ └── LogoutServlet.java │ │── WebContent/ or src/main/webapp/ │ ├── index.jsp │ ├── login.jsp │ ├── register.jsp │ ├── createAccount.jsp │ ├── viewBalance.jsp │ ├── deposit.jsp │ ├── withdraw.jsp │ └── transfer.jsp │ │── pom.xml │── README.md
CREATE DATABASE banking_db; USE banking_db;
CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(50), email VARCHAR(100) UNIQUE, password VARCHAR(100) );
CREATE TABLE accounts ( id INT AUTO_INCREMENT PRIMARY KEY, user_email VARCHAR(100), account_number VARCHAR(20) UNIQUE, name VARCHAR(100), balance DOUBLE DEFAULT 0.0 );
CREATE TABLE transactions ( id INT AUTO_INCREMENT PRIMARY KEY, user_email VARCHAR(100), account_number VARCHAR(20), transaction_type VARCHAR(50), amount DOUBLE, timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP );
- Import the project into Eclipse/IntelliJ as a Dynamic Web/Maven Project.
- Add MySQL JDBC Connector to the project.
- Update database credentials inside
DBConnection.java. - Deploy and run the application on Apache Tomcat.
- Access via: http://localhost:8080/BankingSystem/login.jsp
Piyush Prajapati
Computer Science (AIML) Student | Backend & APIs Developer