import [Link].
*;
import [Link].*;
import [Link];
import [Link];
import [Link];
public class GradingSystemGUI {
private JFrame frame;
private JTextField studentIdField, nameField, sectionField, subjectField,
gradeField, searchField;
private JTextArea resultArea;
private StudentDAO studentDAO = new StudentDAO();
private GradeDAO gradeDAO = new GradeDAO();
public GradingSystemGUI() {
frame = new JFrame("Grading System");
[Link](700, 500);
[Link](JFrame.EXIT_ON_CLOSE);
[Link](new BorderLayout());
JPanel panel1 = new JPanel(new FlowLayout());
studentIdField = new JTextField(10);
nameField = new JTextField(10);
sectionField = new JTextField(10);
JButton addStudentBtn = new JButton("Add Student");
[Link](new JLabel("Student ID:"));
[Link](studentIdField);
[Link](new JLabel("Name:"));
[Link](nameField);
[Link](new JLabel("Section:"));
[Link](sectionField);
[Link](addStudentBtn);
JPanel panel2 = new JPanel(new FlowLayout());
subjectField = new JTextField(10);
gradeField = new JTextField(5);
JButton addGradeBtn = new JButton("Add Grade");
[Link](new JLabel("Subject:"));
[Link](subjectField);
[Link](new JLabel("Grade:"));
[Link](gradeField);
[Link](addGradeBtn);
JPanel panel3 = new JPanel(new BorderLayout());
searchField = new JTextField(20);
JButton searchBtn = new JButton("Search");
resultArea = new JTextArea(15, 50);
[Link](false);
JPanel searchPanel = new JPanel(new FlowLayout());
[Link](new JLabel("Search:"));
[Link](searchField);
[Link](searchBtn);
[Link](searchPanel, [Link]);
[Link](new JScrollPane(resultArea), [Link]);
[Link](panel1, [Link]);
[Link](panel2, [Link]);
[Link](panel3, [Link]);
[Link](new ActionListener() {
public void actionPerformed(ActionEvent e) {
String id = [Link]().trim();
String name = [Link]().trim();
String section = [Link]().trim();
if ([Link]() || [Link]() || [Link]()) {
[Link](frame, "All fields are
required!", "Error", JOptionPane.ERROR_MESSAGE);
return;
[Link](id, name, section);
[Link](frame, "Student Added!");
[Link]("");
[Link]("");
[Link]("");
}
});
[Link](new ActionListener() {
public void actionPerformed(ActionEvent e) {
try {
String id = [Link]().trim();
String subject = [Link]().trim();
double grade = [Link]([Link]().trim());
if ([Link]() || [Link]()) {
[Link](frame, "Student ID and
Subject are required!", "Error", JOptionPane.ERROR_MESSAGE);
return;
[Link](id, subject, grade);
[Link](frame, "Grade Added!");
[Link]("");
[Link]("");
} catch (NumberFormatException ex) {
[Link](frame, "Invalid grade! Enter a
numeric value.", "Error", JOptionPane.ERROR_MESSAGE);
});
[Link](new ActionListener() {
public void actionPerformed(ActionEvent e) {
[Link]("");
String query = [Link]().trim();
List<String> students = [Link](query);
List<String> grades = [Link](query);
if ([Link]() && [Link]()) {
[Link]("No records found.\n");
} else {
for (String s : students) [Link](s + "\n");
for (String g : grades) [Link](g + "\n");
});
[Link](true);
public static void main(String[] args) {
new GradingSystemGUI();