0% found this document useful (0 votes)
28 views2 pages

Java Expense Tracker Project Report

Uploaded by

Madan Kumar R
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views2 pages

Java Expense Tracker Project Report

Uploaded by

Madan Kumar R
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 2

Console-Based Java Expense Tracker

with Login System


Mini Project Report
Submitted by: NIDHI A

Branch: Computer Science / BCA

Year: 2025

1. Abstract
This project is a console-based Expense Tracker developed using Java. It allows users to log
in securely and manage personal expenses by adding titles, amounts, and dates. All expense
data is stored in a local file, enabling persistent storage even after the program exits. This
project demonstrates Java fundamentals like file handling, object-oriented programming,
and user interaction via the console.

2. Objective
The main objective of this project is to build a simple, secure, and user-friendly console-
based application to track daily expenses and understand how Java can be used for real-
world applications.

3. Technologies Used
- Programming Language: Java
- Environment: GitHub Codespaces / IntelliJ IDEA
- File Handling: Text File (expenses.txt)

4. System Design
The system is composed of four main classes:
- Main.java: Entry point and menu interface
- UserManager.java: Handles login validation
- Expense.java: Model class representing an expense
- ExpenseManager.java: Business logic for adding, viewing, and totaling expenses
5. Features
- User login with fixed credentials
- Add expenses with title, amount, and date
- View all added expenses
- Calculate total expenses
- Persistent storage using file system

6. Code Modules Explained


1. Main.java – Provides menu options and handles user input.
2. UserManager.java – Validates login using hardcoded username/password.
3. Expense.java – Represents an individual expense as an object.
4. ExpenseManager.java – Reads and writes data to 'expenses.txt', handles logic.

7. Sample Input/Output
Input:
Username: admin
Password: 1234
Choice: 1
Title: Groceries
Amount: 500
Date: 2025-07-24

Output:
Expense added.

Choice: 2
Title: Groceries, Amount: ₹500, Date: 2025-07-24

8. Conclusion
This Java mini project provided practical experience in developing a full-featured console
application. It reinforced the importance of clean code structure, file operations, and the
basics of secure user input handling.

9. Future Enhancements
- Add support for multiple user accounts
- Add graphical user interface using JavaFX or Swing
- Export reports to PDF or Excel
- Monthly/Category-based analytics
- Password hashing and file encryption

You might also like