搜索了下google,解决方法是修改数据库表中主键的默认值为10000,在hibernate映射文件中的<calss>标签,加入dynamic-insert="true"和 dynamic-update="true" 语句,这时hibernate在进行插入(更新)操作时,只会为那些值不为空的字段赋值,而值为空的字段就会使用数据库表中定义的默认值了。