The ATM Simulator does exactly as its name implies - it emulates an ATM's "login" feature (credentials being credit card number and PIN) and basic functionalities such as balance inquiry, withdrawal, and transfer. The ATM Simulator is a web app created using Spring Boot and various Java plugins (listed as dependencies in the Maven POM file).
Responsibilities:
- Created the front-end using JavaScript, HTML, and CSS
- Leveraged Thymeleaf to connect the front-end with the back-end
- Constructed and maintained the MySQL database
- Established database connectivity using JPA and Hibernate
- Implemented all functionalities including view and update balance requests
- Configured build environment and dependencies with Maven
Environment:
- Java, Spring Boot, Spring Web, Spring Security, MVC
- JavaScript, jQuery, HTML, CSS, Thymeleaf
- JPA, Hibernate
- MySQL, MySQL Java Connector
- Git, Maven, Spring Boot DevTools
Run Locally:
- Install Java 8, MySQL 5.5+, and a Java IDE (this project used IntelliJ IDEA).
- Configure MySQL with username
root
and passwordadmin123
. This project assumes that these are the login credentials for MySQL. Alternatively, if you want to use different credentials, be sure to changespring.datasource.username
andspring.datasource.password
insrc/main/resources/application.properties
as needed. - Start the MySQL server, and run the
atm.sql
script (located in this directory). The script creates a database calledatm
with tablesusers
andaccounts
prefilled with information. - In your IDE, build the project with Maven 3.3+, and then run
src/main/java/com/ahs/Application.java
. This will start the web app. - Navigate to
http://localhost:8080/app/login
in your web browser. Card numbers can be found starting from line 17 of theatm.sql
file, and their associated PINs are in comments at the end of the respective line. For example, card number378282246310005
has PIN123
. - That's it! Play around with the app, and see the changes updated in your MySQL database.