Hibernate: есть ли разница между java.lang.Integer и int? - PullRequest
4 голосов
/ 14 ноября 2011

Есть ли заметная разница между

<property name="pwdRetryCount" type="java.lang.Integer">
    <column name="pwd_retry_count" />
</property>

и

<property name="pwdRetryCount" type="int">
    <column name="pwd_retry_count" />
</property>

1 Ответ

9 голосов
/ 14 ноября 2011

Они имеют заметную разницу только при обработке нулевого значения.

Это потому, что int является примитивным типом данных, который не может присвоить ему значение null, в то время как java.lang.Integer является классом-оболочкой int, который может принимать ноль.

Таким образом, если столбец pwd_retry_count имеет значение NULL и вы используете int для сопоставления объекта сущности, для записи, которая pwd_retry_count равна нулю, возникает ошибка, поскольку int не может сохранить ноль.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...