Как определить, является ли тип long на самом деле NULL?

У нас есть nullable (тип long) столбец (с именем referral) в нашей базе данных MySQL. Мы используем hibernate для ORM.

Я пытаюсь получить значение столбца для определенного члена. Некоторые значения равны null, а если это не так, то это id, который указывает на другого пользователя, который является реферером.

Проблема в том, что в java-коде я пытаюсь определить, является ли столбец этого пользователя нулевым, если нет, то сделать что-нибудь.

String referrerAffiliateId = Long.toString(member.getReferral());
if (referrerAffiliateId != null){
    //do something
}

member.getReferral() возвращает значение (тип long) колонки реферера. Некоторые из этих столбцов являются нулевыми, а некоторые - нет.

Вышеприведенный код компилируется нормально, но я получаю nullPointerException, когда вызываю метод на пользователе, чья колонка реферала является null.

Как мне правильно сделать обнаружение этого?

Заранее спасибо!

Полный ответ:

Спасибо @Marcelo за лучший правильный ответ.

Вот код в его окончательном виде:

Long referrerAffiliateId = member.getReferral();
if (referrerAffiliateId != null) {
    //...
}
5
задан UpHelix 5 January 2012 в 20:41
поделиться