Skip to content

Latest commit

 

History

History
130 lines (86 loc) · 2.88 KB

File metadata and controls

130 lines (86 loc) · 2.88 KB

💳 Banking Application — Spring Boot

A secure and modular banking system developed using Java 17, Spring Boot, and MySQL. The project implements RESTful APIs for core banking operations such as user registration, account management, transactions, and balance tracking.

Java Spring Boot MySQL


🚀 Features

  • 👤 User registration and authentication
  • 🏦 Account creation and listing
  • 🔐 Secured endpoints using Spring Security
  • 📡 RESTful API architecture
  • 🧱 Layered architecture (Controller ➡ Service ➡ Repository)

🧰 Tech Stack

Layer Technology
💻 Language Java 17
🌱 Framework Spring Boot, Spring Security
🗄 ORM Hibernate via Spring Data JPA
🧾 Database MySQL
🎨 View Layer Thymeleaf (optional)
⚙ Build Tool Maven

🏗️ Architecture

[Frontend / Client] 
       ↓
[🔧 Controller Layer]
       ↓
[🧠 Service Layer]
       ↓
[💽 Repository Layer]
       ↓
[🗄 MySQL Database]

⚙️ Setup Instructions

✅ Prerequisites

  • ✅ Java 17+
  • ✅ Maven
  • ✅ MySQL Server
  • ✅ IDE (IntelliJ IDEA / VS Code)

📦 Clone Repository

git clone https://github.com/yashpatil118/Banking_Application---SpringBoot.git
cd Banking_Application---SpringBoot

🛠 Configure Database

Update src/main/resources/application.properties:

spring.datasource.url=jdbc:mysql://localhost:3306/banking_app
spring.datasource.username=your_mysql_username
spring.datasource.password=your_mysql_password
spring.jpa.hibernate.ddl-auto=update

Make sure the database banking_app exists.

▶️ Run the Application

mvn spring-boot:run

Visit http://localhost:8080 for the frontend (if enabled), or use Postman for APIs.


🧪 Running Tests

mvn test

📈 Future Enhancements

  • 🔑 JWT-based Authentication
  • 📦 Dockerfile + Docker Compose Support
  • 🔍 Swagger API Docs (springdoc-openapi)
  • 📬 Email/SMS Notifications
  • ⚙️ GitHub Actions CI/CD Integration

🧑‍💻 Contributing

Contributions are welcome! 🧡
Follow the steps below:

  1. Fork the repository 🍴
  2. Create a new branch feature/my-feature
  3. Commit your changes
  4. Push the branch and create a PR

🙋‍♂️ Author

Yash Patil
🔗 GitHub: @yashpatil118