Java 该栏为「;ID";在hibernate中不能为null

Java 该栏为「;ID";在hibernate中不能为null,java,hibernate,Java,Hibernate,我用一列ID创建了实体patient,该列是表patient的主键。插入新的患者对象时,出现以下异常: WARN: SQL Error: -20001, SQLState: 23502 org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions The column "ID" cannot be null. 这是创建患者对象的代码: SessionFactory sessionFactory = new Confi

我用一列
ID
创建了实体patient,该列是表
patient
的主键。插入新的
患者
对象时,出现以下异常:

 WARN: SQL Error: -20001, SQLState: 23502
 org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions
 The column "ID" cannot be null.
这是创建
患者
对象的代码:

    SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
    Session session = sessionFactory.openSession();
    Patient patient = new Patient(1L, null, "John", "Kennedy", 12, "USA", "Wall Street");

    session.save(patient);
患者
对象的值id为1

我将struts与Tomcat6、Derby10.9.1.0和Hibernate4一起使用


您是否正在使用Hibernate ID生成?(我想不会,因为你正在输入ID)。 您需要输出带有输入参数的Hibernate SQL,以了解生成了什么样的SQL插入。

如果
ID
列是
Primary key
或其部分或
外键
不能为空,请尝试发布患者类别和表格。粘贴患者实体代码。您正在使用哪个数据库?请提供您的映射或带有注释的
Patient
类。