java hibernate

最近在编程过程中遇到如下问题,折腾了很长时间,终于把问题找到,并解决,现把解决方法及分析罗列,希望能帮到遇到类似问题的朋友。

 分析 :1、通过跟踪代码,发现在项目中若在*.hbm.xml中配置了id的生成策略为自增 则在保存对象时会做如下  操作

             a)从数据库中查询出已有Id的最大值

             b)把Id加1作为新的ID

             c)当插入数据时会把ID一块插入

             2、若此时我们的数据库中此字段也设置为自增时,插入数据时,就会出如上错误。

解决办法:把数据库中ID为标识去掉即可解决问题


 

你可能感兴趣的:(Hibernate)