我正在使用 OrmLite 4.46 来管理我的 android 应用程序的数据库。
我有一个问题:
我的模型有以下代码:
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
所以看起来这个名字是空的。
我还检查了 sqlite db 文件中上述模型中创建的表,当我设置defaultValue=""
该列时,创建的列没有默认值。
有人知道这个问题的任何解决方案吗?