对于表单的某些不重要的信息,我们通常可以使用数据库中设定的默认值来填写,但用hibernate操作数据库时就碰到:某些信息希望使用默认值来填写字段,所以在表单提交上来的这些信息就为空,结果一update上去后,就出来一个 XX字段为NULL,“无法更新”的错误。这类错误很常见,也简单解决:
1.在要使用默认值的该字段上使用<property>属性:假如是更新操作:update="false",假如是添加操作:insert="false"
这样,hibernate提交的sql语句就会忽略对此字段的更新或者插入操作。
2.当要使用默认值的字段过多时,也可以使用<class>属性:假如是更新操作:dynamic-update="true",假如是添加操作:dynamic-insert="true"
如果提交的该实体类中某些字段为NULL,hibernate会动态生成sql语句忽略对这些字段的操作。