Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Hipernate赢得';t更新对象,将主键重置为0_Java_Hibernate - Fatal编程技术网

Java Hipernate赢得';t更新对象,将主键重置为0

Java Hipernate赢得';t更新对象,将主键重置为0,java,hibernate,Java,Hibernate,我正在使用JavaServerPages、Hibernate和MySql。 我有一个数据库对象的更新页面(表单),但当我尝试更新它时,我收到以下消息: 批量更新从更新[0]返回了意外的行数;实际行数:0;预期:1 我使用了一些System.out.println函数来尝试检查错误的位置,我得出的结论是,当进入ManagedBean时,主键被重置为0,但只有主键值被重置,所有其他字段值都是相同的 如果说主键(使用hibernate)映射为: 有人知道问题出在哪里吗?在你调用update metho

我正在使用JavaServerPages、Hibernate和MySql。 我有一个数据库对象的更新页面(表单),但当我尝试更新它时,我收到以下消息:

批量更新从更新[0]返回了意外的行数;实际行数:0;预期:1

我使用了一些System.out.println函数来尝试检查错误的位置,我得出的结论是,当进入ManagedBean时,主键被重置为0,但只有主键值被重置,所有其他字段值都是相同的

如果说主键(使用hibernate)映射为:


有人知道问题出在哪里吗?

在你调用update method的代码后,我认为你的实体对象没有id设置,hibernate无法更新没有id的对象,因为他在数据库中找不到它。你是否在google上做过这个问题,已经有一些讨论了。是的,BalusC,你是对的。没有为实体分配id值,这就是问题所在。我通过为id添加另一个输入文本字段,然后将该值传递给update方法来修复它。
@Id
@GeneratedValue(strategy = GenerationType.AUTO)