大家好,     请问Hibernate是否提供了能够根据是否定义主键ID,而判断是否自动生成主键ID的注解呢?
     比如:我往数据库插入一条记录,我没有设置主键值的话,数据库就会自动生成一个,但是我要设置了主键值的话,
     就会插入的设置的主键了。谢谢~

解决方案 »

  1.   

    我觉得你所指的自动生成值是指自动增长列。
    在MS SQL中是有自动增长的属性,
    oracle中是采用sequence来实现的,取sequence的nextval值(序列的下一个值)
    不知道是不是你要的答案。
      

  2.   

    給你個參考,可能有用,如果是hibernate的話,在設置key產生方式的時候,用sequence,就如1樓所說。
    create sequence sq_studentID
    minvalue 1
    maxvalue 10000
    increment by 1
    start with 1
    cache 20create trigger tr_into_student
    before
    insert on student for each row
    begin
    select sq_studentID.nextval into:new.studentId from dual;
    end;
    insert into student(studentname,Studentnumber,sex,password,project) values('student1','123',1,'456','net');