GithubHelp home page GithubHelp logo

mustafakbaser / spring-banking-app Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 79 KB

Simplify banking operations with our REST APIs built on Spring Boot and MySQL. Manage accounts, transactions, and more effortlessly.

License: MIT License

Java 100.00%
java mysql spring spring-boot

spring-banking-app's Introduction

Simple Banking Application REST APIs

This project aims to provide a simple yet efficient solution for managing basic banking operations through a RESTful API. Leveraging the power of Spring Boot, Spring Data JPA (backed by Hibernate), and MySQL database, it offers seamless integration and robustness for handling account-related functionalities.

Features

  • Account Creation: Users can easily create new bank accounts through the provided API endpoints.
  • Account Details: Fetch comprehensive details about a specific bank account, including balance and transaction history.
  • Deposit/Withdrawal: Perform deposit and withdrawal operations securely and efficiently.
  • Account Deletion: Safely delete bank accounts when necessary, with proper validation and authorization.
  • More to Explore: The application provides room for expansion with additional features to enhance banking operations.

Technologies Used

  • Spring Boot: Empowers rapid application development with its convention-over-configuration philosophy and embedded server capabilities.
  • Spring Data JPA (Hibernate): Simplifies database interactions by providing a high-level abstraction over JPA, reducing boilerplate code and enhancing productivity.
  • Spring Web: Facilitates building flexible and extensible RESTful APIs with minimal effort, allowing seamless communication between the client and server.
  • MySQL Database: Offers a reliable and scalable relational database management system, ensuring data integrity and consistency.
  • Lombok: Streamlines Java code development by automatically generating boilerplate code (such as getters, setters, and constructors), reducing verbosity and improving readability.

Getting Started

To get started with the project, follow these steps:

  1. Clone the Repository: Clone this repository to your local machine using the following command:

    git clone https://github.com/mustafakbaser/spring-banking-app.git
    
  2. Set Up MySQL Database: Create a MySQL database and configure the connection properties in the application.properties file.

  3. Run the Application: Build and run the application using Maven or your preferred IDE. The application will start on the configured port (default: 8080).

  4. Explore the APIs: Use tools like Postman or curl to interact with the RESTful APIs provided by the application. Refer to the API documentation for detailed endpoint information.

API Documentation

Endpoints

  • Create Account: POST /accounts
  • Get All Accounts: GET /accounts
  • Get Account By Id: GET /accounts/{id}
  • Deposit Amount: PUT /accounts/{id}/deposit
  • Withdraw Amount: PUT /accounts/{id}/withdraw
  • Delete Account By Id: DELETE /accounts/{id}

For detailed API documentation and usage instructions, refer to the API Documentation file.

Contribution Guidelines

Contributions to the project are welcome! To contribute, follow these guidelines:

  • Fork the repository and create a new branch for your feature or bug fix.
  • Ensure that your code adheres to the established coding standards and practices.
  • Submit a pull request detailing the changes introduced and any relevant information.

License

This project is licensed under the MIT License.

spring-banking-app's People

Contributors

mustafakbaser avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.