Organize all things student-related in one place!
The Student Organizer is an application that allows users to organize and view key information about a student in one place, storing user input by reading and writing to files.
It was created for my client, a primary teacher, as part of the IB CS Higher Level Internal Assessment, and attained a score of 7/7.
With the Student Organizer, you can:
- Manage student and year group portfolios, storing data such as grades, allergies, birthdates, etc.
- Create visualizations and schedule birthdates on a calendar and grades for a class group in a table.
- Search and retrieve student information based on any data stored.
Download the files and run StudentOrganizer.java
. This initializes the main class, MainWindow.java
.
The front-end is constructed with Java Swing
.
- Each JFrame is contained in the corresponding
[JFrameName].java
file.
The back-end is constructed using several Java utilities, including RegEx
, ArrayList
, PrintWriter
, and Scanner
.
RegEx
utility is used for data validation of user inputted data in various JFrames such asAddStudent.java
orAddClass.java
.BirthdayCalendar.java
andGradeTable.java
use theArrayList
utility to generate dynamic 2D String[][] arrays to display birthdates in a calendar, and grades in a table.ReaderHelper.java
andWriterHelper.java
classes contain methods which useFile
,PrintWriter
, andScanner
utilities to read and write data to the appropriate files,classFile.txt
,gradeFile.txt
, orstudentFile.txt
.SearchHelper.java
contains methods to search for students.Student.java
contains initialization methods ofStudent
objects. EachStudent
object contains aStudentGrade
object, which is initialized inStudentGrade.java
.ClassGroup.java
contains initialization methods ofClassGroup
objects, which containStudent
objects.GradeEditor.java
,EditStudents.java
,ClassEditor.java
contain methods to manage information of the various objects.ViewStudents.java
is used to display information stored inStudent
objects.