В JPA (реализация Hibernate) Какой тип лучше использовать в качестве идентификатора объекта: Тип в штучной упаковке (например, Integer
) или Unboxed (например, int
)?
Друг сказал, что вы должны использовать типы в штучной упаковке, потому что, когда вы создаете новый объект в своей программе, Hibernate видит, что идентификатор является null
и понимает, что он должен создать новую строку в базе данных (в отличие от id не является null
Hibernate может обновлять существующая строка в базе данных).
Но id моих сущностей был int
и он работал хорошо без ошибок, и мы знаем, что значение по умолчанию для примитивных переменных экземпляра равно 0
. Поэтому он сказал, что, возможно, hibernate рассматривает 0
как особый и предполагает, что объект является новым.