Java @AttribueOverride(name=";col1";,column=@column(nullable=true))抛出不能将字段设置为null值
所以我有一个可嵌入类型,它包含两个映射到列的字段。在该类型中,两列都设置为Java @AttribueOverride(name=";col1";,column=@column(nullable=true))抛出不能将字段设置为null值,java,hibernate,jpa,Java,Hibernate,Jpa,所以我有一个可嵌入类型,它包含两个映射到列的字段。在该类型中,两列都设置为nullable=false 在另一个使用该可嵌入类型的对象中,我希望覆盖列名并将其中一列设置为nullable=true @属性溢出({ @AttributeOverride(name=“col1”,column=@column(name=“COL_1”,nullable=true)), @AttributeOverride(name=“col2”,column=@column(name=“COL_2”,nullabl
nullable=false
在另一个使用该可嵌入类型的对象中,我希望覆盖列名并将其中一列设置为nullable=true
@属性溢出({
@AttributeOverride(name=“col1”,column=@column(name=“COL_1”,nullable=true)),
@AttributeOverride(name=“col2”,column=@column(name=“COL_2”,nullable=false))
})
看起来不错,对吧
当我运行代码时,我尝试获取col1为null的行,得到如下结果:
org.hibernate.PropertyAccessException:为基元类型setter col1的属性分配了Null值
有什么想法吗
提前感谢。列可以为空,但实体中的字段是基本类型(可能是int、long或boolean)。Hibernate无法将null存储到基元类型字段中。它应该是整数、长型或布尔型
这就是错误消息所说的:“为基元类型的属性分配了Null值”。列可以为Null,但实体中的字段是基元类型(可能是int、long或boolean)。Hibernate无法将null存储到基元类型字段中。它应该是整数、长型或布尔型 这就是错误消息所说的:“为基元类型的属性分配了Null值”