0

これらのメソッドを実行しようとすると、nullpointexception に関するエラーのみが表示されますが、コードをチェックして同様のアプリケーションと比較しても、まだ理解できません。

編集: GUI コードの for ループ行で例外が発生します。

MVC でアプリケーションをビルドしました

GUI コード:

public void actionPerformed(ActionEvent e) {

            String pnr = textResPnr.getText();
            String courseNr = textResCourseNr.getText();
            ArrayList<Student> studentList = controller.results(pnr, courseNr);

            String resultString = "";
            for (Student student : studentList) {
                resultString = student.getPnr() + " " + student.getName() + " " + student.getGrade() + "\n"; 
            }
            textAreaResultat.setText(resultString);

        }

私のコントローラー:

public ArrayList<Student> results(String pnr, String courseNr){
    try {

        student.setPnr(pnr);
        course.setCourseNr(courseNr);
        ArrayList<Student> studentList = null;
        if(student.getPnr() != null){
            dal.getResults(course, student);
        }else{
             studentList = dal.getAssignedStudents(course);
            /*for (Student student : studentList) {

            }*/
        }

        return studentList;
    } catch (Exception e) {
        return null;
    }
}

私のデータベース アクセス層:

public ArrayList<Student> getAssignedStudents(Course course){
    try {
        Statement stmt = connection.createStatement();
        ResultSet rset = stmt.executeQuery("SELECT Student.pnr, Student.namn, Registrering.betyg FROM Registrering INNER JOIN Student ON Registrering.pnr = Student.pnr WHERE betyg IS NOT NULL AND kursnr = '" + course.getCourseNr() + "';");

        ArrayList<Student> studentList = new ArrayList<Student>();
        while (rset.next()) {


            String pnr = rset.getString("pnr");
            String name = rset.getString("namn");
            String grade = rset.getString("betyg");

            Student student = new Student();

            student.setName(name);
            student.setPnr(pnr);
            student.setGrade(grade);

            studentList.add(student);

        }
        return studentList;
    } catch (Exception e) {
        System.err.println("Got an exception! ");
        System.err.println(e.getMessage());
        return null;
    }
}
4

0 に答える 0