Java 一个人能制造奥姆利特吗';s dao.create是否向整型字段而不是0插入空值?

Java 一个人能制造奥姆利特吗';s dao.create是否向整型字段而不是0插入空值?,java,mysql,null,ormlite,Java,Mysql,Null,Ormlite,是否可以将dao.create()插入默认的空整数字段而不是0 根据文档,@DatabaseField注释的canBeNull参数默认为true,我还没有找到方法将null值作为defaultValue参数输入 是否可以使dao.create()将null插入默认的null整数字段而不是0 是的,你能做到 我还没有找到一种方法,如何将null-value作为defaultValue-argument提供 默认情况下,任何未初始化的字段都应在数据库中指定该类型的默认值。例如,创建实体时未设置值的i

是否可以将
dao.create()
插入默认的空整数字段而不是0

根据文档,
@DatabaseField
注释的
canBeNull
参数默认为true,我还没有找到方法将
null
值作为
defaultValue
参数输入

是否可以使dao.create()将null插入默认的null整数字段而不是0

是的,你能做到

我还没有找到一种方法,如何将null-value作为defaultValue-argument提供

默认情况下,任何未初始化的字段都应在数据库中指定该类型的默认值。例如,创建实体时未设置值的
int
字段在数据库中的值应为0。对于任何对象字段(如
Integer
),默认值已经是
null
。您只需不提供
defaultValue

例如,以下代码适用于我:

public class Foo {
     @DatabaseField(generatedId = true)
     private int id;
     @DatabaseField // no default-value specified
     private Integer someIntegerField;
}
...
Foo foo = new Foo();
// leave someIntegerField as a null value without a default-value defined
assertEquals(1, dao.create(foo));

Foo result = dao.queryForId(foo.id);
// by default the field that we did not initialize comes back as null
assertNull(result.someIntegerField);
如果您提供一个默认值,那么ORMLite将尝试将其转换为一个整数值,以便它可以分配它。只需删除默认值设置,它就会工作

是否可以使dao.create()将null插入默认的null整数字段而不是0

是的,你能做到

我还没有找到一种方法,如何将null-value作为defaultValue-argument提供

默认情况下,任何未初始化的字段都应在数据库中指定该类型的默认值。例如,创建实体时未设置值的
int
字段在数据库中的值应为0。对于任何对象字段(如
Integer
),默认值已经是
null
。您只需不提供
defaultValue

例如,以下代码适用于我:

public class Foo {
     @DatabaseField(generatedId = true)
     private int id;
     @DatabaseField // no default-value specified
     private Integer someIntegerField;
}
...
Foo foo = new Foo();
// leave someIntegerField as a null value without a default-value defined
assertEquals(1, dao.create(foo));

Foo result = dao.queryForId(foo.id);
// by default the field that we did not initialize comes back as null
assertNull(result.someIntegerField);

如果您提供一个默认值,那么ORMLite将尝试将其转换为一个整数值,以便它可以分配它。只要删除默认值设置就可以了。

是的,只要不使用基元类型,然后就可以为可空类型设置
null
。是的,只要不使用基元类型,然后就可以为可空类型设置
null