2

JPA 1、Struts2、および AppEngine データストアを使用しています。

Web アプリケーションに永続化されたオブジェクトが既にあります。Boolean プロパティを既存のエンティティに追加したいと考えています。このため、すでに保存されている古いオブジェクトには、このプロパティnullの値があります。Boolean

これは私の新しい財産です

private Boolean display = false;

public Boolean getDisplay() {
    return display;
}
public void setDisplay(Boolean display) {
    this.display = display;
}

どのように私は財産を防ぐつもりjava.lang.NullPointerExceptionですか?display

4

2 に答える 2

1

以下の作品:

if (Boolean.TRUE.equals(item.getDisplay())){

}

以下の条件では、NPE がスローされます。

if (item.getDisplay()){

}

于 2013-01-24T02:52:38.523 に答える
0

最善の解決策は、既存のデータを「コード」と一致するように変更することだと思います。

もちろん議論も可能です。

  • 一部の人は言うでしょう:常にnullをチェックし、プログラムは堅牢です。
  • 他の人は言うでしょう:クリーンなコード、その場合nullは決して不可能なので、それをチェックしないでください。
于 2013-01-24T09:54:16.040 に答える