在数据库中添加额外的列会中断休眠吗?
只要
列未定义为NOT NULL
,或者定义了DEFAULT
值就可以了。
插入 Hibernate 发出的语句不会为列提供值(显然),但它生成的语句在语法上是正确的,即使它不知道列 - 列及其值根本不会在插入语句中提及。
如果必须以某种特殊方式派生值,则可以考虑使用数据库触发器来维护该列中的值,但除非绝对必要,否则会谨慎使用数据库功夫,例如,如果您无法控制休眠实体类的源代码,并且该列必须是无法声明为列默认值的某个特定值。
更新和选择语句不需要特殊处理。
如果您的意思是通过休眠自动更新表,那么您可以在休眠配置文件中使用以下方法
<property name="hbm2ddl.auto">create</property>