Java 如何在Hibernate中从XML生成主键?

Java 如何在Hibernate中从XML生成主键?,java,xml,hibernate,Java,Xml,Hibernate,我有一个用户类: public class User{ private Long userId; } 我在xml中使用这个: <id name="userId" type="long" unsaved-value="null"> <column name="USER_ID" not-null="true" /> <generator class="native" /> </id> 我希望Hibernate

我有一个用户类:

public class User{
    private Long userId;
}
我在xml中使用这个:

<id name="userId" type="long" unsaved-value="null">
        <column name="USER_ID" not-null="true" />
        <generator class="native" />
</id>

我希望Hibernate为我生成id。这里缺少什么?

您需要为用户ID列设置
自动增量

ALTER TABLE users ADD USER_ID INT UNSIGNED NOT NULL AUTO_INCREMENT;

native
指令意味着您的数据库负责生成id。因为您没有在数据库端设置生成id的策略,所以出现了异常
java.sql.SQLException:Field'USER\u id'没有默认值

您需要为USER\u id列设置
自动增量

ALTER TABLE users ADD USER_ID INT UNSIGNED NOT NULL AUTO_INCREMENT;
native
指令意味着您的数据库负责生成id。因为您没有在数据库端设置生成id的策略,所以出现了异常
java.sql.SQLException:Field“USER\u id”没有默认值