one-to-one一般有两种,一种是主键关联,一种是唯一外键关联,从楼主的配置文件中看不出来是那种,导致GROUPS表的主键插入时为null,楼主把表结构贴出来看看

解决方案 »

  1.   

    用外键关联的那个文件也用one-to-one模式,用主键(也可以用其他键)做关联的那个文件,用many-to-one模式,但是加上唯一的约束。不过哪种模式,给其id加上unsaved-value="0"即可。
      

  2.   

    表结构如下:create table COURSES
    (
      ID   NUMBER,
      NAME VARCHAR2(32)
    )create table GROUPS
    (
      GROUPID NUMBER not null,
      GROUPNM VARCHAR2(32),
      ID      NUMBER not null
    )
    alter table GROUPS
      add constraint GROUPS_PK primary key (GROUPID,ID)
      using index 
      tablespace TEST
      pctfree 10
      initrans 2
      maxtrans 255
      storage
      (
        initial 64K
        minextents 1
        maxextents unlimited
      );
      

  3.   

    你把项目里导进来的包:log4j-1.2.8.jar
    去掉,再重新运行下试试!
      

  4.   

    呵呵,偶不要看你的表结构,既然用hibernate了,就别再和关系数据库扯上关系了,看你的hbm文件先。
      

  5.   

    看你的表好像是要外键关联
    那么你的group.hbm应该加上一段many-to-one
    <many-to-one
    name='你在group类里的course变量名'
    class='Course'
    column='ID'
    unique='true'
    />