@Entity
class Employee{
@Id
String name;
int age;
String gender;
}
Я использую указанный выше объект сущности в качестве ключа в Hashmap:
Employee e1 = new Employee("abc",23,"M")
Теперь, если я создам новую сущность с тем же идентификатором и сохраню ее:
@Autowired
EmployeeDao employeeDao;
e1.findByName("abc");
Map<Employee, Boolean> map = new HashMap<>();
map.put(e1, true);
Employee e2 = new Employee("abc",45,"F");
employeeDao.save(e2)
for(Employee ex:map.keySet()){
map.get(ex); //Returns null
}
Я понял, что мой HashKey (e1) также изменен (на e2).Теперь, так как Hashmap использует объекты «Entry», где Key будет объектом Entity Entity (который изменился), действительно ли объекты JPA ссылаются на объекты, хранящиеся в Entity Manager?Вот почему ключ изменился?
Почему ключ (e1) изменился автоматически?