All Classes and Interfaces
Class
Description
Represents an abstract bank account with basic operations like deposit and withdrawal.
Abstract base class for customers in the banking system.
Abstract base class for employees in the banking system.
Service class for managing bank account operations.
Servlet that handles all account related operations.
Filter that logs user activities in the banking system
Records who did what
Listener that manages application startup and shutdown processes.
Filter that checks Authentication and Authorization
Redirects unauthenticated users to login page
Enforces role based access control
Represents the result of an authentication attempt.
Service class for user authentication in the banking system.
Interface for Banking related JOBS
Represents a bank branch.
Filter adds same site attribute
Prevents CSRF attacks by controlling the cookies which are sent with cross-site requests
Filter that protects against Cross-Site Request Forgery (CSRF) attacks.
Represents a customer in the banking system.
Builder for creating Customer instances.
Represents the relationship between a customer and an account.
Builder for creating
CustomerAccount
instances.Service class for managing customer operations.
Servlet that handles all customer related operations.
Singleton class for managing database connections to MySQL
Ensures only one instance exists and provides connection pooling
Interface defining data storage operations for the banking system.
Represents an employee in the banking system.
Builder for creating Employee instances.
Filter that validates and sanitizes user input to prevent XSS and injection attacks.
Background job that calculates and credits monthly interest to savings accounts.
Manages all background jobs.
Schedules and executes background jobs using thread pool.
Servlet that handles user authentication and login process.
Servlet that handles user logout and session invalidation.
Represents a manager in the banking system.
Utility class for generating and verifying time-based OTPs
Uses current time as seed for synchronized OTP generation
Utility class for password hashing and verification
Uses SHA-256 with salt for secure password storage
Represents a person entity in the banking system.
Filter that restricts user from making DoS attacks and abuse
Limits number of requests using a sliding window
This filter validates Http request headers for security purpose.
Represents a savings account with a minimum balance constraint.
Builder for creating
SavingsAccount
instances.Filter that adds security headers to HTTP responses which is sent to the browser.
Servlet that handles new customer registration and signup process.
Represents a transaction log entry in the banking system.
Enum representing the status of a transaction.
Enum representing the type of transaction.
Enum representing the user type who initiated the transaction.