Chúng tôi có một cột (loại dài) không có giá trị (được đặt tên giới thiệu) trong cơ sở dữ liệu MySQL của chúng tôi. Chúng tôi sử dụng hibernate cho ORM.Làm thế nào để phát hiện nếu một loại dài thực sự là NULL?
Tôi đang cố gắng lấy giá trị của cột cho một thành viên nhất định. Một số là null, và nếu không, một id của nó trỏ đến một thành viên khác có referrer.
Vấn đề là trong mã java Tôi đang cố gắng phát hiện nếu cột của thành viên đó là null, nếu không, hãy làm điều gì đó.
String referrerAffiliateId = Long.toString(member.getReferral());
if (referrerAffiliateId != null){
//do something
}
member.getReferral() trả về giá trị (loại dài) của cột giới thiệu. Một số cột đó là null và một số thì không.
Mã trên biên dịch tốt, nhưng tôi nhận được một nullPointerException khi tôi gọi phương thức trên người dùng có cột giới thiệu là rỗng.
Tôi làm cách nào để phát hiện đúng cách này?
Cảm ơn trước!
Full Trả lời:
Nhờ @Marcelo cho câu trả lời đúng nhất.
Đây là mã trong trạng thái cuối cùng của nó:
Long referrerAffiliateId = member.getReferral();
if (referrerAffiliateId != null) {
//...
}
kiểu trả về của 'member.getReferral()' là gì? –
@Ted Hopp - dài – UpHelix
Tôi giả sử bạn có nghĩa là 'Long' vì một' long' là một kiểu nguyên thủy và không thể có nó là null. 'Long' có thể là null mặc dù. Kiểm tra giá trị trả về của 'getReferral()' trực tiếp và không cố chuyển đổi nó thành một chuỗi. – gnomed