从@Column
注释文档中,我验证了nullable
属性true
为默认值。
在我的实体定义中,我想将列不可为空设置为默认行为,但我不想为每一列设置此列。
有没有办法全局更改nullable
属性(最终是其他属性)的默认值?
答案 0 :(得分:1)
如果表格中的列为notnull
,则JPA会从数据库中的表中获取可为空的属性,那么您的实体属性也将为@NotNull
。您可以对数据库进行更改并重新创建实体。
答案 1 :(得分:0)
我不熟悉覆盖JPA默认设置的方法,但您可以使用EntityListeners执行某些@PrePersist验证,并通过反射检查对象字段(非瞬态字段)是否为空。
话虽如此,我相信这会使实体定义不那么明确,而是宁愿坚持使用更多的声明性技术(nullable =" false")。