我的问题是成功添加了一行,但是当添加更多数据时,它显示下面给出的错误。有重复的条目,但我想为同一个学生插入两个笔记本电脑数据。我是休眠的初学者,请指导我先生。Exception in thread "main" org.hibernate.exception.ConstraintViolationException: could not execute statementat org.hibernate.exception.internal.SQLExceptionTypeDelegate.convert(SQLExceptionTypeDelegate.java:72)at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:49)at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:126)at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:112)at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:190)at org.hibernate.engine.jdbc.batch.internal.NonBatchingBatch.addToBatch(NonBatchingBatch.java:62)at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3124)at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3587)at org.hibernate.action.internal.EntityInsertAction.execute(EntityInsertAction.java:103)at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:453)at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:345)at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:350
2 回答
动漫人物
TA贡献1815条经验 获得超10个赞
我建议@GeneratedValue
在 field 上使用注释id
。您的错误是由于违反了 field 的主键约束id
。id
理想情况下,您必须避免在保存对象时进行设置。
如果您想每次向不同的学生添加相同的笔记本电脑对象,请在笔记本电脑实体类中初始化您的字段,添加一个构造函数并每次在为任何学生设置笔记本电脑时调用该构造函数。
添加回答
举报
0/150
提交
取消