0

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=""すると、デフォルト値なしで列が作成されます。

この問題の解決策を知っている人はいますか?

4

2 に答える 2