Skip to content

A GUI Banking app Built on Spring Framework with Java

Notifications You must be signed in to change notification settings

warmachine028/Swing-Bank

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

updated on: 08th June 2023, Thursday
Swing Bank

Experience banking without limits

Distribution

line

Table of Contents

line

Introduction

  • This is a desktop based GUI Banking Application.
  • Built using Java on top of Swing and AWT Framework.
  • It uses MySQL as Database management.
  • For automating build configuration ANT has been used.
  • IVY has been used for dependency management.
  • Extensive use of GitHub Workflows for CI/CD.
  • Fully opensource

line

Development

  • Download and Install Ant
  • Set path and environment variable
  $> ant -f ivysetup.xml
  ...  
  $> ant
  ...
  $> ant -f run.xml

line

Concepts Used

  • Inheritance
    • Hierarchical
    • MultiLevel
  • Abstraction
    • Partial (Abstract Class)
    • Complete (Interface)
  • Interface
    • Functional Interface
  • Polymorphism
    • Static (Method OverLoading)
    • Dynamic (Method OverRiding)
  • Exception Handling
    • Try Catch Block
    • Multi Catch
    • Multiple Exceptions in 1 Block ('|' symbol)
    • Checked Exceptions
    • Usage of Throw vs Throws keywords
  • Packaging
    • Sub-Packaging
  • Folder Structuring
    • build
    • lib
    • components
    • src
    • dist
  • String Formatting
  • Environment Variables
  • Form Validation
    • Email Validation
    • Prevention of SQL Injection
  • Component Reusability
    • DRY Concept

line

Tech Stack Used

  • FrontEnd: Swing & AWT
  • BackEnd: Java
  • Configuration: XML
  • Database: MySQL, JDBC
  • Build: Ant
  • Dependency Management: Ivy
  • Version Control: Git
  • Distribution: GitHub
  • CI/CD: GitHub Actions
  • Development: Intellij IDEA
  • Documentation: VsCode

line

Dependencies

Preview

line

Table Schema

- Users

Field Type Null Key Default Extra
formNo int NO PRI NULL auto_increment
name varchar(255) NO NULL
fName varchar(255) NO NULL
dob date NO NULL
gender enum('Male','Female') NO NULL
email varchar(255) NO NULL
maritalStatus enum('Married','Single','Other') NO NULL
address varchar(255) NO NULL
city varchar(100) NO NULL
state varchar(100) NO NULL
pinCode varchar(20) NO NULL

- Additional Details

Field Type Null Key Default Extra
id int NO PRI NULL auto_increment
formNo int NO UNI NULL
religion enum('Hindu','Muslim','Sikh','Other') NO NULL
category enum('General','OBC','SC','ST','Other') NO NULL
income enum('No Fixed Income','< 1,50,000','< 2,50,000','< 5,00,000','< 10,00,000','More than 10,00,000') NO NULL
qualification enum('Non Graduate','Graduate','Post Graduate','Doctorate','Other') NO NULL
occupation enum('Student','Salaried','Self Employed','Business','Retired','Other') NO NULL
pan char(10) NO NULL
aadhaar char(12) NO NULL
existingHolder enum('Yes','No') NO NULL
seniorCitizen enum('Yes','No') NO NULL

Best Contributors

line

License

Pritam, 2023

line

Thank you, everyone 💚