Struts2一對多配置

2021-09-22 22:35:40 字數 2677 閱讀 3210

在多表對映配置時,我們應該遵循以下不步驟:

確定兩張表之間的關係

在資料庫中實現兩張表之間的關係建立

在實體類中描述出兩個實體類之間的關係

在對映配置檔案中建立兩個實體和兩張表之間的關係

我們就按照上面的步驟做,我這裡有一張聯絡人表和一張客戶表,一對多關係,實體類**如下:

/**

* 客戶的實體類

* @author dengg

* */

public class customer

public void setcustid(long custid)

public string getcustname()

public void setcustname(string custname)

public string getcustsource()

public void setcustsource(string custsource)

public string getcustindustry()

public void setcustindustry(string custindustry)

public string getcustlevel()

public void setcustlevel(string custlevel)

public string getcustaddress()

public void setcustaddress(string custaddress)

public string getcustphone()

public void setcustphone(string custphone)

@override

public string tostring()

public customer(long custid, string custname)

public customer()

}

/**

* 聯絡人的實體類

* @author dengg

* */

public class linkman implements serializable

public void setlkmid(long lkmid)

public string getlkmname()

public void setlkmname(string lkmname)

public string getlkmphone()

public void setlkmphone(string lkmphone)

public string getlkmmobile()

public void setlkmmobile(string lkmmobile)

public string getlkmemail()

public void setlkmemail(string lkmemail)

public string getlkmposition()

public void setlkmposition(string lkmposition)

public string getlkmmemo()

public void setlkmmemo(string lkmmemo)

@override

public string tostring()

}

第二步在資料庫中實現兩張表之間的關係建立,因為我用了hibernate,會自動建立,就不弄了

第三步在實體類中描述出兩個實體類之間的關係:

首先我們在customer類中配置linkman類的關係,乙個客戶對應多個聯絡人

我們在customer加入如下**:

private setlikmans = new hashset(0);

public setgetlikmans()

public void setlikmans(setlikmans)

主表應該包含從表實體的集合引用,用set集合來建立關係,再配置set和get方法,就行了。

接著配置linkman,加入**如下:

private customer customer;

public customer getcustomer()

public void setcustomer(customer customer)

第四步在對映配置檔案中建立兩個實體和兩張表之間的關係:

我們先開啟customer.hbm.xml檔案,裡面加入配置如下:

name:就是我們在customer類中設定set集合的名字

table:指定從表的名字,也就是聯絡人表名

key:指定外來鍵欄位名

one-to-many:指定從表實體名稱

然後開啟linkman.hbm.xml檔案,在裡面加入如下**:

name:從表實體引用主表實體物件引用的名稱嗎,就是在linkman類中設定customer物件的名稱

class:指定屬性所對應的實體類名稱,就是customer路徑

column:指定外來鍵的名稱

mybatis關聯配置(一對多配置)

mybatis框架的關聯配置 首先假設我們資料庫中有兩個表,乙個表示move,另乙個是movetype,move裡面有乙個欄位typeid,與movetype表裡面的id相對應。相信大家已經看出來了,乙個movetype對應多個move,我們查詢move欄位的時候,必要的時候得顯示movetype的...

spring mybatis 一對多配置總結

比如有下面兩個物件 class 和 student 乙個class 裡會有很多的班級 class student 這個時候在mybatis 對應bean 物件的xml 中需要如下配置 resultmapid baseresultmap type class類的完整路徑 result property...

mysql join 一對多 Join 一對多連線

資料庫常見的join方式有三種 inner join,left outter join,right outter join 還有一種full join,因不常用,本文不討論 這三種連線方式都是將兩個以上的表通過on條件語句,拼成乙個大表。以下是它們的共同點 1.關於左右表的概念。左表指的是在sql語...