hibernate中多對多關係如何儲存中間表其他表資料不變

時間 2021-10-14 22:24:01

1樓:匿名使用者

可以試試用hibernate原生查詢直接用sql語句向中間表插入資料。

query query=session.createsqlquery("insert into t_stu_tea(stu_id,tea_id) values(?,?)");

query.setinteger(1,1);

query.setinteger(2,1);

query.executeupdate();

希望有幫助。我也暫時沒具體的執行驗證,想思考看看有沒有更好的辦法

2樓:匿名使用者

在配置檔案裡寫,比如說:teacher 和 student 的關係 乙個學生可以有多個老師,乙個老師也可以有多個學生

配置檔案內容

--student一方的配置檔案--

//中間表與student 關聯的列 與student中的主鍵關聯//teacher與中間表關聯的列 與teacher主鍵關聯--teacher一方的配置檔案--

//此處column值必須與上面處的column值一致//此處column值必須與上面 的column值一致

hibernate只在乙個表的對映檔案中設定了多對多關係,怎麼實現另乙個表刪除內容時,修改中間表的資訊?

3樓:web開發實戰

你可以不一定非得利用hibernate的關係對映把。 自己造刪除的方法裡定義乙個事務,然後再delete操作完成後,再自己寫**手動去更新你要更新的表的資料,再做提交。反正有事務,失敗也會回滾,我覺得效果還是一樣的。

並且效率也不一定比hibernate慢,鬼知道hibernate在後台多做了些什麼沒用的操作呢。

4樓:調和若

2個對映檔案都要set

5樓:匿名使用者

多對多兩個裡面都要set的

hibernate 多對多 中間表有其他的字段的配置方法 怎麼插入資料

6樓:匿名使用者

如果你要在中間表中加其他字段,就只能新加乙個表乙個類,兩個類是不能實現的。我原來做的類似你說的,把有用的給你寫出來了。大概這個意思,簡單明瞭,希望你能看懂

t_module 目錄表;t_role 角色表; acl 許可權表(乙個角色可以看到多個目錄,乙個目錄可以被多個目錄看到)

**class module

class module {

private int id;

private string name;

private string url;

private int orderno;

private string sn;

//getter and setter

**class role

class role {

private int id;

private string name;

//getter and setter

**class acl

class acl{

private int id;

private string principaltype;

private int principalid;

private int moduleid;

private int aclstate;

//setter and getter

** modulexml

** rolexml

** aclxml

7樓:

你把你要插入的2個表的外來鍵 分別帶進去查詢 出來乙個實體類 後在set進你要插入的實體類

SQL一對多表關聯查詢,sql多對多關係的兩表如何聯合查詢出所有的結果?

補充 這個,感覺樓主的語句不用寫成這樣詭異的,你可以試試下面的語句符不符合你的要求 select from table1 a,table 2 b where a.name b.name 這樣不就行了麼?可以給多一點資訊麼?具體你想返回什麼呢?是這樣麼?table1符合的記錄欄位 table1所對應的...

hibernate一對多和多對一問題

乍一看,這的確是一種關係從不同的角度去看,但也正是這一點造成兩種關係並不相同。舉個例子 假如,資料庫有部門表,共10個部門 員工表,共100名員工,同時,假設每10名員工屬於乙個部門。那麼,使用多對一的關係,是在員工實體裡放乙個部門實體。而使用一對多的關係,是在部門實體裡放乙個員工實體的集合。假如,...

hibernate多對多對映中間表有多餘字段問題該如何對映

省省是吧。已myeclipse為例 將多對多轉換成乙個多對一和乙個一對多。中間表自己控制。hibernate多對多對映中間表怎麼加入其它字段 旺仔鐵柱 將多對多建立成兩個一對多關係就行了。你的中間表物件沒有主鍵,第一種方式就是你為中間表增加乙個主鍵,這個也是如果要把中間表對映成物件的推薦方式。hib...