OrmLite 4.46 を使用して、Android アプリケーションのデータベースを管理しています。
そして、私には1つの問題があります:
私のモデルには次のコードがあります。
public class Item extends Model {
@DatabaseField(generatedId = true)
private long id;
@DatabaseField(columnName = "item_name", defaultValue = "")
private String name;
@DatabaseField(columnName = "item_count", defaultValue = "0")
private int count;
public Item() {
super();
}
}
そして問題はここにあります:
@DatabaseField(columnName = "item_name", defaultValue = "")
private String name;
引数なしで新しい Item() を作成し、それをデータベースに保存すると、通常は列 item_name に空の文字列が保存されます。
しかし、データベースからアイテムを取得していて、試してみると
String itemName = item.getName().trim() NullPointerException が発生します
そのため、名前は null のようです。
また、sqlite dbファイルで上記のモデルから作成されたテーブルを確認しました。設定defaultValue=""
すると、デフォルト値なしで列が作成されます。
この問題の解決策を知っている人はいますか?