ABC College is a local education provider that specialises in software development, information
management, and mobile application development training. The educational provider has
recently opened a college in your town and has hired the software development house you work
for to design a Java application to manage their students.
Your line manager has requested you develop the application with the following requirements:
1.1. When the application starts, it must display the following menu structure:
STUDENT MANAGEMENT APPLICATION
*************************************************
Please enter (1) to launch menu or any other key to exit
if 1 is chosen
Please select one of the menu items:
(1) capture a new student
(2) Search for a student
(3) delete a student
(4) print a student report
(5) exit application
1.2. If the user selects to capture a new student, you must save all the information supplied by
the user to memory. use arrays or array lists to save the student model to achieve
this.
Sample Capture Student Screen Shot:
CAPTURE A NEW STUDENT
***********************************
Enter the student ID: 34256
Enter student name: tarishka
enter student age: 19
enter student email:tqriwyi
enter student course: disd
Enter (1) to launch menu or any other key to exit
1.3. If the user enters an incorrect student age, prompt the user to re-enter a valid one. A valid
student age is any age greater than or equal to 16. Only numbers are allowed to be
supplied when entering a student’s age:
Enter student age: c
You have entered the incorrect student age!!!!
please re-enter the student age >>
Sample Screen Shot of an invalid age:
Enter student age: 10
You have entered the incorrect student age!!!!
please re-enter the student age >>
1.4. Once the entire submission has been completed, the user must be informed that the
student details have been successfully saved.
1.5. The user must have the ability to search for a student. The user will select menu item two,
which will prompt the user to enter a student ID. If a student is found in the application,
display the student’s details to the user. If no student is found, display an error message to
the user that the student cannot be located.
Sample Student Search Screen Shot:
Enter student ID to search:34256
---------------------------------------------
student ID: 34256
student name: tarishka
student age: 19
student email:tqriwyi
student course: disd
-------------------------------------------------
Enter (1) to launch menu or any other key to exit
Sample Invalid Student Screen Shot:
Enter the student ID to Search: 55555
------------------------------------------------------
Student with ID: 55555 was NOT found!!!
------------------------------------------------------
Enter (1) to launch menu or any other key to exit
1.6. The user must have the option to delete a student that has been saved. The user must first
enter the student ID to be deleted. The user must confirm whether they want to delete the
student.
Enter student ID to delete :34256
Are you sure you want to delete Student 34256 from the system?
Yes (y) to delete: y
----------------------------------------------------------------------------------------
Student with student ID: 34256 WAS deleted!!!!!
----------------------------------------------------------------------------------------
Enter (1) to launch menu or any other key to exit
1.7. When the user selects to view the student report, display the report below, which is
generated from the memory collection in your application.
Sample Report Screen Shot:
STUDENT 1
-------------------------------------------
student ID: 34256
student name: tarishka
student age: 19
student email:tqriwyi
student course: disd
---------------------------------------------
STUDENT 2
---------------------------------------------
student ID: 67879
student name: sam
student age: 19
student email:yy38798
student course: djjkd
----------------------------------------------
Enter (1) to launch menu or any other key to exit
1.8. Finally, provide the ability for the user to exit the application.
Additional Requirements:
1.9. In your solution, you are required to create a class called Student which will contain all your
working methods.
1.10. This class will, as a minimum, contain the following methods, but you are encouraged to
add more methods:
• SaveStudent();
• SearchStudent();
• DeleteStudent();
• StudentReport();
• ExitStudentApplication ();
1.11. Create a main class to run your application.
in java
1 answer
```java
import java.util.ArrayList;
import java.util.Scanner;
class Student {
private int studentID;
private String studentName;
private int studentAge;
private String studentEmail;
private String studentCourse;
public void setStudentID(int studentID) {
this.studentID = studentID;
}
public void setStudentName(String studentName) {
this.studentName = studentName;
}
public void setStudentAge(int studentAge) {
this.studentAge = studentAge;
}
public void setStudentEmail(String studentEmail) {
this.studentEmail = studentEmail;
}
public void setStudentCourse(String studentCourse) {
this.studentCourse = studentCourse;
}
public int getStudentID() {
return studentID;
}
public String getStudentName() {
return studentName;
}
public int getStudentAge() {
return studentAge;
}
public String getStudentEmail() {
return studentEmail;
}
public String getStudentCourse() {
return studentCourse;
}
}
public class StudentManagementApplication {
private final ArrayList<Student> students;
public StudentManagementApplication() {
students = new ArrayList<>();
}
public void showMenu() {
System.out.println("STUDENT MANAGEMENT APPLICATION");
System.out.println("*************************************************");
System.out.println("Please enter (1) to launch menu or any other key to exit");
System.out.println("if 1 is chosen");
System.out.println("Please select one of the menu items:");
System.out.println("(1) capture a new student");
System.out.println("(2) Search for a student");
System.out.println("(3) delete a student");
System.out.println("(4) print a student report");
System.out.println("(5) exit application");
}
public void saveStudent() {
Scanner scanner = new Scanner(System.in);
Student student = new Student();
System.out.println("CAPTURE A NEW STUDENT");
System.out.println("***********************************");
System.out.print("Enter the student ID: ");
student.setStudentID(scanner.nextInt());
scanner.nextLine(); // Consume the remaining newline character
System.out.print("Enter student name: ");
student.setStudentName(scanner.nextLine());
System.out.print("Enter student age: ");
int age = scanner.nextInt();
while (age < 16) {
System.out.println("You have entered an incorrect student age!!!!");
System.out.print("Please re-enter the student age: ");
age = scanner.nextInt();
}
student.setStudentAge(age);
scanner.nextLine(); // Consume the remaining newline character
System.out.print("Enter student email: ");
student.setStudentEmail(scanner.nextLine());
System.out.print("Enter student course: ");
student.setStudentCourse(scanner.nextLine());
students.add(student);
System.out.println("Student details have been successfully saved.");
}
public void searchStudent() {
Scanner scanner = new Scanner(System.in);
System.out.print("Enter student ID to search: ");
int studentID = scanner.nextInt();
boolean found = false;
for (Student student : students) {
if (student.getStudentID() == studentID) {
System.out.println("---------------------------------------------");
System.out.println("student ID: " + student.getStudentID());
System.out.println("student name: " + student.getStudentName());
System.out.println("student age: " + student.getStudentAge());
System.out.println("student email: " + student.getStudentEmail());
System.out.println("student course: " + student.getStudentCourse());
System.out.println("---------------------------------------------");
found = true;
break;
}
}
if (!found) {
System.out.println("------------------------------------------------------");
System.out.println("Student with ID: " + studentID + " was NOT found!!!");
System.out.println("------------------------------------------------------");
}
}
public void deleteStudent() {
Scanner scanner = new Scanner(System.in);
System.out.print("Enter student ID to delete: ");
int studentID = scanner.nextInt();
boolean found = false;
for (Student student : students) {
if (student.getStudentID() == studentID) {
System.out.println("Are you sure you want to delete Student " + student.getStudentID() + " from the system?");
System.out.print("Yes (y) to delete: ");
String confirm = scanner.next();
if (confirm.toLowerCase().equals("y")) {
students.remove(student);
System.out.println("----------------------------------------------------------------------------------------");
System.out.println("Student with student ID: " + studentID + " WAS deleted!!!!!");
System.out.println("----------------------------------------------------------------------------------------");
} else {
System.out.println("Deletion operation cancelled.");
}
found = true;
break;
}
}
if (!found) {
System.out.println("------------------------------------------------------");
System.out.println("Student with ID: " + studentID + " was NOT found!!!");
System.out.println("------------------------------------------------------");
}
}
public void studentReport() {
System.out.println("STUDENT REPORT");
System.out.println("-------------------------------------------");
for (int i = 0; i < students.size(); i++) {
System.out.println("STUDENT " + (i + 1));
System.out.println("-------------------------------------------");
System.out.println("student ID: " + students.get(i).getStudentID());
System.out.println("student name: " + students.get(i).getStudentName());
System.out.println("student age: " + students.get(i).getStudentAge());
System.out.println("student email: " + students.get(i).getStudentEmail());
System.out.println("student course: " + students.get(i).getStudentCourse());
System.out.println("-------------------------------------------");
}
}
public void exitStudentApplication() {
System.exit(0);
}
public static void main(String[] args) {
StudentManagementApplication application = new StudentManagementApplication();
application.showMenu();
Scanner scanner = new Scanner(System.in);
int option = scanner.nextInt();
switch (option) {
case 1:
application.saveStudent();
application.showMenu();
break;
case 2:
application.searchStudent();
application.showMenu();
break;
case 3:
application.deleteStudent();
application.showMenu();
break;
case 4:
application.studentReport();
application.showMenu();
break;
case 5:
application.exitStudentApplication();
break;
default:
break;
}
}
}
```
You can run this code to get the desired functionality for managing students in ABC College.