我正在阅读Pro JPA 2这本书,在关于持久化实体的部分中,有一些我不理解的代码。
Department dept = manager.find(Department.class, 1l);
Employee emp = new Employee();
emp.setId(1);
emp.setFirstName("Peter");
emp.setDepartment(dept);
manager.persist(emp);
//System.out.println(dept.getEmployees());
transaction.commit();
System.out.println(dept.getEmployees());
如果第一个输出被删除,代码将打印:```
[Employee(id = 1,firstName = Peter,lastName = null,names = [])]
如果我将其重新添加,代码将显示空白列表:
[]
[]
我知道在提交事务之后,将刷新持久性上下文并应更新Department实体。只有在删除第一个sout语句时,这种情况才会发生。