StudentInfo stu = new StudentInfo();
StudentInfoDao studentInfoDao = new StudentInfoDao();

List list=studentInfoDao.findstudentlistByClassId(1);//得到1班的所有学生列表

MajorCourseDao mcd = new MajorCourseDao();

MajorCourse mc=null;

for(int i=0;i<list.size();i++)
{
//下面的俩个方法都是测试成功的!!!
stu=(StudentInfo)list.get(i);
System.out.println(stu.getStudentID());//可以得到所有学生的Id
mc= mcd.findMajorCourseByStudentId(stu.getStudentID(),"HTML","2009.3-2010.9");//根据studentId来获得HTML ,2009.3-2010.9这个学期的成绩(但是这里却得不到)
System.out.println(mc.getMajorScore());//没有输出成功
}

System.out.println("----------------------------------");/////////////错误信息2009213012
Exception in thread "main" java.lang.NullPointerException
at Test.StudentInfoTest.main(StudentInfoTest.java:32)

解决方案 »

  1.   

    大概是mc=null了,debug一下 mcd.findMajorCourseByStudentId这个方法咯~
      

  2.   

    StudentInfoTest.main(StudentInfoTest.java:32)袮都说了这行空指针了啊。找找问题根源....
      

  3.   

    mc= mcd.findMajorCourseByStudentId(stu.getStudentID(),"HTML","2009.3-2010.9")
    查出来得mc对象是空的
      

  4.   

    MajorCourse mc=null; 这个是空指针的问题。这个是你查询出来的结果为null。所以报空指针错误。你跟踪进入到findMajorCourseByStudentId就知道问题所在了。