Hibernate筆記3 多表操作 導航查詢

2022-08-25 12:33:19 字數 2562 閱讀 7889

一.一對多操作

1.構造實體類及編寫配置檔案:

一方:

1

// 乙個customer對應多個linkman

2private setlinkmans = new hashset<>(0);

配置:

1

2<

setname="linkmans"

inverse="true"

>34

<

keycolumn="sys_cust_id"

>

key>56

<

one-to-many

class="entity.linkman"

/>

7set

>

多方:

1

// 多個linkman對應乙個customer

2private customer customer;

配置:

1

2<

many-to-one

name="customer"

class="entity.customer"

column="sys_cust_id"

>

many-to-one>

2.測試**

1

package demo;23

import org.hibernate.session;

4import org.hibernate.transaction;

5import org.junit.test;67

import entity.customer;

8import entity.linkman;

9import utils.hibernateutils;

1011

//一對多操作

12public

class demo01

32 }

33

二.多對多操作

1.構造實體類及編寫配置檔案:

多方1-user:

1

2<

setname="roles"

table="sys_user_role"

cascade="all"

>34

<

keycolumn="sys_user_id"

>

key>56

<

many-to-many

class="entity.role"

column="sys_role_id"

>

many-to-many>

7set

>

多方2-role:

1

2<

setname="users"

table="sys_user_role"

inverse="true"

>34

<

keycolumn="sys_role_id"

>

key>56

<

many-to-many

class="entity.user"

column="sys_user_id"

>

many-to-many>

7set

>

2.測試**:

1

package demo;23

import org.hibernate.session;

4import org.hibernate.transaction;

5import org.junit.test;67

import entity.role;

8import entity.user;

9import utils.hibernateutils;

1011

//測試多對多操作

12public

class demo02

3132

33 @test

34// 多對多級聯操作,多乙個配置,少乙個儲存

35public

void testcascade()

5455 @test

56// 給1號使用者新增2號角色操作

57public

void addrole()

7172 @test

73// 刪除1號使用者的1號角色

74public

void delrole()

8889 @test

90// 修改1號使用者為3號角色

91public

void changerole()

109 }

110

三.導航查詢

概念:比如客戶與聯絡人是一對多的關係,通過查詢客戶也能查詢其對應的聯絡人,則稱為導航查詢.導航查詢預設為延遲載入;如果使延遲載入失效,則在客戶的對映關係檔案的set標籤內配置lazy屬性

hibernate多表查詢

在沒有使用select的時候,返回的是乙個 student物件,否則返回的是乙個物件陣列 object ilist userlist session.find from testmssql.student as student where student.name 張三 nhibernate.nhi...

MYSQL學習筆記 關於MySQL的多表操作 2

實際開發中,乙個專案通常需要很多張表才能完成。主鍵 和 外來鍵 的概念 主鍵是能確定一條記錄的唯一標識。外來鍵用於與另一張表的關聯,都是指向另乙個表的主鍵。可伸縮性 能夠適應不斷增加的工作量而不失敗,設計良好的資料庫或應用程式稱之為可伸縮性好。普通的多表查詢 select sname,address...

hibernate多表關聯配置

關聯關係對映通常情況是最難配置正確的.我們從單向關係對映開始,然後考慮 雙向關係對映,逐步深入。單向關聯 參考hibernate reference documentation 一 多對一 many to one 單向 many to one 關聯是最常見的單向關聯關係。create table p...