【发布时间】:2014-07-06 15:13:07
【问题描述】:
员工类:
公共类员工{
private int EMPLOYEE_ID;
private int FACULTY_NO;
private int ENROLMENT_NO;
private String FIRSTNAME;
private String LASTNAME;
private Date BIRTH_DATE;
private String CELLPHONE;
private Department DEP;
//getters and setters
}
部门类:
公开课部{
private Long DEPARTMENT_ID;
private String DEPARTMENT_NAME;
private String DEPARTMENT_LOCATION;
private String DEPARTMENT_RANK;
Set<Employee> EMPLOYEE_LIST;
// getters and setters
}
IMPl 类:
公共类 OneToManyImpl {
public static void main(String[] args) {
SessionFactory sessionFactory = HibernateUtility.getSessionFactory();
Session session = sessionFactory.openSession();
session.beginTransaction();
Department department = new Department();
department.setDEPARTMENT_NAME("Mechanical Dept.");
department.setDEPARTMENT_RANK("A class");
department.setDEPARTMENT_LOCATION("University");
session.save(department);
Employee EMP = new Employee();
EMP.setENROLMENT_NO(2007255);
EMP.setENROLMENT_NO(3794);
EMP.setFIRSTNAME("FirstName");
EMP.setLASTNAME("Gernaline");
EMP.setBIRTH_DATE(new Date());
EMP.setCELLPHONE("011899954");
EMP.setDEP(department);
department.getEMPLOYEE_LIST().add(EMP);
session.save(EMP);
session.getTransaction().commit();
session.close();
}
}
即使在添加整个 Set 之后,我在这一行得到空指针异常:department.getEMPLOYEE_LIST().add(EMP); 我哪里错了?
【问题讨论】:
-
EMPLOYEE_LIST是否已初始化?为什么这个变量要大写? -
@Reimeus 所以,`TATA CONSULTANCY SERVICES,(该特定银行领域的专家)使用大写字母。有趣!!!
-
谢谢你的回答。 department.setEMPLOYEE_LIST(new HashSet()); // 你可以添加这一行 department.getEMPLOYEE_LIST().add(EMP);这解决了我的问题。你还能从这个世界上经验丰富的人那里得到什么?