Posted on 2009-03-11 13:49
Robert Su 閱讀(5185)
評(píng)論(6) 編輯 收藏 所屬分類:
Java
Case:
action需要同時(shí)向兩張表中添加數(shù)據(jù)
比如一個(gè)是class 一個(gè)是video
每次都是一對(duì)多的關(guān)系~每一次插入的Video的classID是相同的
video表中有個(gè)字段是classId 對(duì)應(yīng)的是的class中的主鍵 ID
ID是sequence生成的
那我批量插入video的時(shí)候怎樣獲取class_ID_sequence生成的id值呢?
思路:
我觀察到Hibernate做插入的時(shí)候每次插入記錄的時(shí)候會(huì)首先查詢sequence
select CLASS_ID_SEQ.nextval from dual
那怎樣獲取到這個(gè)select的值呢?
獲取到這個(gè)值可以直接給
video.setClassID(classID)
請(qǐng)大家討論并指教~
***************整理如下*******************
執(zhí)行完這句sql語句select CLASS_ID_SEQ.nextval from dual之后,class這個(gè)對(duì)象已經(jīng)執(zhí)行過setId方法,所以當(dāng)前它的id值可以獲得getId方法得到;
可以直接在在action這樣寫
Long id=class.getId();
感謝隔葉黃鶯