A GUI-based Java application for managing student records โ designed to help track, view, and evaluate academic data with ease. Built with Swing, it's lightweight, fast, and easy to use.
- Add new students with name, roll number, and marks
- View all students in a dynamic table
- Search by roll number
- Calculate average marks
- Display grade distribution
This repository follows a clean, professional layout with a single main branch containing all necessary project files organized in folders:
student-management-system/
โโโ src/
โ โโโ Student.java
โ โโโ StudentManagementSystem.java
โโโ assets/
โ โโโ screenshots/
โ โโโ login-screen.png
โ โโโ ui-main.png
โโโ presentation/
โ โโโ student-management-system-presentation.pptx
โโโ README.md
The project presentation is included in the presentation/ folder for explanation of application features and operations.
- Java (JDK 17 or above recommended)
- Swing (Java GUI)
- AWT
- File-based storage using
.datfiles (no external database or JDBC) - IntelliJ IDEA / Eclipse (IDE)
Before running the project, make sure you have the following installed and set up on your machine:
-
Java Development Kit (JDK) version 17 or above
Download from Oracle or OpenJDK -
IDE (Optional but Recommended): IntelliJ IDEA, Eclipse, or any Java-supporting IDE for easier development and execution.
-
Git (for cloning the repository)
Download and install from Git SCM
This project uses file-based storage with .dat files to persist student data locally. The application reads and writes student records directly to these files, eliminating the need for external database setup or JDBC connectivity. This approach keeps the system lightweight and easy to deploy, while ensuring data persists between sessions.
-
Clone the repository
git clone https://github.com/your-username/student-management-system.git cd student-management-system -
Open the project in IntelliJ IDEA or Eclipse
-
Run the file
Compile and run StudentManagementSystem.java
These screenshots are also available inside the project folder under assets/screenshots/, for offline access.
assets/screenshots/login-screen.png
assets/screenshots/ui-main.png
- Integration with a relational database (MySQL, SQLite) using JDBC for scalable data management.
- Implement DAO pattern for cleaner code separation and easier maintenance.
- Enhance UI responsiveness and add more analytics features.
- Krishnendra Singh Sengar - B.Tech in Computer Science & Engineering
- Manjistha Chakraborthy - B.Tech in Computer Science & Engineering
This project is open-source and free to use for educational and personal learning purposes.

