Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sufiyan33/bank-management-system
The Bank Management System allow you to perform various banking operation including managing accounts, fund transfers, and transactions.
https://github.com/sufiyan33/bank-management-system
bank-management-system banking banking-applications banking-system java jwt-authentication maven spring-boot spring-data-jpa spring-security springframework swagger-ui
Last synced: 3 minutes ago
JSON representation
The Bank Management System allow you to perform various banking operation including managing accounts, fund transfers, and transactions.
- Host: GitHub
- URL: https://github.com/sufiyan33/bank-management-system
- Owner: Sufiyan33
- Created: 2023-11-27T08:38:06.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2023-12-22T11:06:03.000Z (about 1 year ago)
- Last Synced: 2024-12-02T21:14:38.859Z (about 2 months ago)
- Topics: bank-management-system, banking, banking-applications, banking-system, java, jwt-authentication, maven, spring-boot, spring-data-jpa, spring-security, springframework, swagger-ui
- Language: Java
- Homepage:
- Size: 109 KB
- Stars: 2
- Watchers: 1
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Bank-Management-System
The Bank Management System allow you to perform various banking operation including managing accounts, fund transfers, and transactions.# Prerequisites
- Basic knowledge of Java and the Spring Framework.
- A code editor of your choice (e.g., `VSCode, IntelliJ IDEA, Eclipse`).
- Postman for testing API endpoints.
- A MySQL database.# Features
- **User Registration:** Users can register by providing their details, such as name, email, address, and phone number.
- **PIN Management:** Users can create and update their PINs for added security.
- **Cash Deposit and Withdrawal:** Users can deposit and withdraw cash from their accounts.
- **Fund Transfer:** Users can transfer funds to other accounts within the system.
- **Transaction History:** Users can view their transaction history.# Technologies used
- Java Spring Boot Framework
- Spring Security for authentication
- JWT (JSON Web Token) for secure API authentication
- MySQL for data storage
- Hibernate for object-relational mapping
- Maven for project management
- Postman for API testing# Dependencies
- Spring data jpa
- Spring web
- Spring start validation
- Spring security
- Spring devtools
- Spring starter mail
- Spring starter cache
- Mysql connector
- Jwt
- Jackson# Installation and Setup
- Fork repository: git clone:`https://github.com/Sufiyan33/Bank-Management-System.git`
- Configure MySQL: Set up a MySQL database and update the database credentials in application.properties.
- Build and run the project: `mvn spring-boot:run`# Database configuration
- Add below properties in application.properties
```
server.port=8080
spring.datasource.url=jdbc:mysql://localhost:3306/bankManagement
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.jpa.database-platform = org.hibernate.dialect.MySQL5Dialect
spring.jpa.generate-ddl=true
spring.jpa.show-sql=true
spring.jpa.hibernate.ddl-auto = update
spring.main.allow-circular-references=true
server.error.include-message=always
# JWT Configuration
jwt.secret=your-secret-key
jwt.expiration=86400000 # Token expiration time in milliseconds (e.g., 24 hours)
jwt.header=Authorization
jwt.prefix=Bearer
```# Error Handling
- For error handling I am using global exception handling to throw exceptions.# How you can Contribute
- First of all most welcome & I encourage you to contribute to the project and help us make it even better. If you are interested in contributing, follow these steps:
- 🔺Fork the Repository: Click on the "`Fork`" button on the top right corner of the GitHub repository page. This will create a copy of the repository in your GitHub account.
- 🔺Clone the Forked Repository: Open your terminal or command prompt and use the following command to clone the repository to your local machine:
- 🔺OR you can also clone in eclise or intelij idea using plugin:
`git clone https://github.com/your-username/Bank-Management-System.git`
Replace `your-username` with your GitHub username.
- 🔺Create a New Branch: Go to folder where you have cloned & create a new branch for your changes & start working on it.# Follow
- If you liked it then don't forget to follow me and share this in your linked tagging me.