org.hibernate.id.IdentifierGenerationException:在调用save()之前必须手动分配此类的ID:而id是在oracle中自动生成

时间:2015-05-14 11:48:30

标签: java eclipse spring oracle hibernate

我正在eclipse中使用spring 4.0hibernate 4.0.1项目并使用oracle作为数据库。如果我在数据库中进行一些更改,那么更改不会受到eclipse的影响。例如。我在oracle中生成id,这段代码在eclipse中成功执行。但之后我再次在数据库中进行了一些更改,相同的代码没有运行它给我的错误

org.hibernate.id.IdentifierGenerationException: ids for this class must be manually assigned before calling save():

请帮我解决这个问题。

1 个答案:

答案 0 :(得分:1)

您的例外的含义是 ID未正确设置。错误在您的映射中。如果您使用sequence来递增ID,您还必须在映射中执行此操作。以下:

@GeneratedValue(generator = "yourSequenceName", strategy=GenerationType.SEQUENCE)
private int id;

我希望这会对你有所帮助。