今天发现了一个 hibernate 很强大或者比较奇怪的地方。hibernate
好比 User 对象 关联了 Role 对象 假设开始 USer 是没有 关联的 role 数据的 也就是 user.getRoles() 为 null 在一个 service 方法中好比 save(){ //这时候 list 确定为空 List<Role> list =user.getRoles() ; Role role =new Role(); ..... //保存 和 User有关系的role role.save(); //此时 经过 user.getRoles() 或者list 能获取到 role了 //也就是 list 不为空了,内容就是 刚才保存的 role list.size()==1 }
也就是 hibernate 能够把 当前 保存的数据 和 关联数据 给关联和赋值进去了。包括 引用 对象。code
都会赋值进去。对象
我以前 还用 引用的关联对象去判断是否为空 去处理 和判断,致使 出了BUG。get