Java 是否可以为JPA中的列设置默认空值,如果可以,如何使用注释来实现?
直到现在我试过这个,我得到了例外Java 是否可以为JPA中的列设置默认空值,如果可以,如何使用注释来实现?,java,jpa,Java,Jpa,直到现在我试过这个,我得到了例外 @Column(name = "price", nullable = "true") private Double PriceAmount ;. 原因:org.apache.openjpa.persistence.ArgumentException:com.model.entities.jpa.Price.PriceAmount的字段“com.model.entities.jpa”。Price@1433836不能将“”设置为“null”值。 位于org.apa
@Column(name = "price", nullable = "true")
private Double PriceAmount ;.
原因:org.apache.openjpa.persistence.ArgumentException:com.model.entities.jpa.Price.PriceAmount的字段“com.model.entities.jpa”。Price@1433836不能将“”设置为“null”值。
位于org.apache.openjpa.jdbc.meta.strats.HandlerFieldStrategy.insert(HandlerFieldStrategy.java:133)
位于org.apache.openjpa.jdbc.meta.FieldMapping.insert(FieldMapping.java:623)
位于org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.insert(AbstractUpdateManager.java:239)
位于org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.populateRowManager(AbstractUpdateManager.java:166)
位于org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.flush(AbstractUpdateManager.java:97)
位于org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.flush(AbstractUpdateManager.java:78)
JPA列只能在表列也为空时设置为空。请签入数据库并更改它 JPA列只能在表列也为null时设置为null。请签入数据库并更改它 使用注释
Caused by: <openjpa-2.1.2-SNAPSHOT-r422266:1497841 nonfatal user error> org.apache.openjpa.persistence.ArgumentException: Field "com.model.entities.jpa.Price.PriceAmount" of "com.model.entities.jpa.Price@1433836" can not be set to "null" value.
at org.apache.openjpa.jdbc.meta.strats.HandlerFieldStrategy.insert(HandlerFieldStrategy.java:133)
at org.apache.openjpa.jdbc.meta.FieldMapping.insert(FieldMapping.java:623)
at org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.insert(AbstractUpdateManager.java:239)
at org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.populateRowManager(AbstractUpdateManager.java:166)
at org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.flush(AbstractUpdateManager.java:97)
at org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.flush(AbstractUpdateManager.java:78)
将阻止将字段属性添加到SQL。然后将使用字段默认值。使用注释
Caused by: <openjpa-2.1.2-SNAPSHOT-r422266:1497841 nonfatal user error> org.apache.openjpa.persistence.ArgumentException: Field "com.model.entities.jpa.Price.PriceAmount" of "com.model.entities.jpa.Price@1433836" can not be set to "null" value.
at org.apache.openjpa.jdbc.meta.strats.HandlerFieldStrategy.insert(HandlerFieldStrategy.java:133)
at org.apache.openjpa.jdbc.meta.FieldMapping.insert(FieldMapping.java:623)
at org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.insert(AbstractUpdateManager.java:239)
at org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.populateRowManager(AbstractUpdateManager.java:166)
at org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.flush(AbstractUpdateManager.java:97)
at org.apache.openjpa.jdbc.kernel.AbstractUpdateManager.flush(AbstractUpdateManager.java:78)
将阻止将字段属性添加到SQL。然后将使用fielddefault值。您的列在DB上可以为空吗?是@Jürgen表列也可以为空吗?你的列在DB上可以为空吗?是的@Jürgen表列也可以为空吗?“Y”是表列也为空。它写得像null?“Y”。这意味着它可以接受你能提供更多的细节吗?表创建脚本、JPA实体和完整堆栈跟踪?请检查我是否提供了所有详细信息。是表列也为空。它写得像null?“Y”。这意味着它可以接受你能提供更多的细节吗?表创建脚本、JPA实体和完整堆栈跟踪?请检查我提供的所有详细信息。