freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

跟我學(xué)hibernate框架技術(shù)——在容器外實(shí)現(xiàn)多對(duì)一的實(shí)體映射技術(shù)第2部分-資料下載頁

2024-11-14 08:42本頁面

【導(dǎo)讀】Card為“一對(duì)多”;而。BankUser的“多對(duì)一”關(guān)聯(lián),則應(yīng)該在這個(gè)“多端”的Card表的。一個(gè)外鍵引用“一端”的目標(biāo)表的主鍵字段。數(shù)組類型的成員。本例成員定義一個(gè)Set集合類-----因?yàn)镾et不允許包括重復(fù)的元素而且排序

  

【正文】 g cardName) { = cardName。 } public char getCardType() { return cardType。 } public void setCardType(char cardType) { = cardType。 } public float getCardMoney() { return cardMoney。 } public void setCardMoney(float cardMoney) { = cardMoney。 楊教授工作室 精心創(chuàng)作的優(yōu)秀程序員 職業(yè)提升必讀系列資料 楊教授工作室,版權(quán)所有,盜 版必究 , 17/20 頁 17 } public int getPerson_ID() { return person_ID。 } public void setPerson_ID(int person_ID) { = person_ID。 } private String cardName。 private char cardType。 private float cardMoney。 private int person_ID。 public CreditCardPO() { } } ( 2)在 文件中增加 manytoone的映射 通過該 manytoone的映射,實(shí)現(xiàn)對(duì)前面的成員屬性加一定義(關(guān)聯(lián)屬性 card_Person與 person_id 外鍵)。 ?xml version=? !DOCTYPE hibernatemapping PUBLIC //Hibernate/Hibernate Mapping DTD hibernatemapping class name= table=card id name=card_id generator class=/ /id property name=cardName / property name=cardType / 楊教授工作室 精心創(chuàng)作的優(yōu)秀程序員 職業(yè)提升必讀系列資料 楊教授工作室,版權(quán)所有,盜 版必究 , 18/20 頁 18 property name=cardMoney / property name=person_ID / manytoone name=card_Person class= column=PERSON_ID update=false insert=false / /class /hibernatemapping 如果要實(shí)現(xiàn)“一對(duì)一”的映射,則需要采用下面的配置: manytoone name=card_Person class= column=PERSON_ID unique=true update=false insert=false / 注意: 在 manytoone的設(shè)定中, cascade 表示主控方( Card)進(jìn)行 saveupdate、 delete 等相關(guān)操作時(shí),被控方( Person)是否也一并進(jìn)行相關(guān)操作,簡單的說,也就是我們儲(chǔ)存或更新 Card實(shí)例時(shí),當(dāng)中的 Person 實(shí)例是否一并對(duì)數(shù)據(jù)庫發(fā)生儲(chǔ)存或操作,設(shè)定為 all,表示主控方任何操作,被控方也進(jìn)行對(duì)應(yīng)操 作。 如果不設(shè)定 cascade 為 true,則我們必須分別對(duì) Card 實(shí)例與 Person 實(shí)例進(jìn)行儲(chǔ)存 . 使用cascade 自動(dòng)持久化時(shí),會(huì)先檢查被關(guān)聯(lián)對(duì)象的 id 屬性,未被持久化的對(duì)象是否儲(chǔ)存是藉由id 屬性的 unsavedvalue 決定,預(yù)設(shè)是 null,也就是沒有參考至任何值時(shí)儲(chǔ)存對(duì)象。 如果我們使用 int、 long 這樣的原生型態(tài)( Primitive type)時(shí),由于數(shù)據(jù)成員的初始會(huì)被設(shè)定為 0,所以我們必須自行指定默認(rèn)值,例如(如果 id 的數(shù)據(jù)型態(tài)是 long 的話)。 另外,如果將 update=true insert=true設(shè)置時(shí) manytoone name=card_Person class= column=PERSON_ID update=true insert=true / 將出現(xiàn)下面的錯(cuò)誤 楊教授工作室 精心創(chuàng)作的優(yōu)秀程序員 職業(yè)提升必讀系列資料 楊教授工作室,版權(quán)所有,盜 版必究 , 19/20 頁 19 不知道是什么原因? 編程對(duì)應(yīng)的 DAO 功能實(shí)現(xiàn)方法 在 WebHibernateDAOInterface 接口中添加下面的方法 public BankUserPO getCardBankUser(String cardId) throws HibernateException。 在實(shí)現(xiàn)類中完成具體的功能實(shí)現(xiàn) 在 中增加一個(gè)獲得關(guān)聯(lián)數(shù)據(jù)的方法 public BankUserPO getCardBankUser(String cardId) throws HibernateException{ Session session = ()。 CreditCardPO oneCard = (CreditCardPO) (, cardId)。 BankUserPO oneUser= ()。 return oneUser。 } 注意: 由于我們希望能夠采用延遲加載的技術(shù),因此不應(yīng)該在 DAO 中關(guān)閉 Session。 在測(cè)試用例類中添加對(duì)應(yīng)的測(cè)試方法 楊教授工作室 精心創(chuàng)作的優(yōu)秀程序員 職業(yè)提升必讀系列資料 楊教授工作室,版權(quán)所有,盜 版必究 , 20/20 頁 20 @Test public void testGetCardBankUser() throws HibernateException, UnsupportedEncodingException { String cardId=402881c2262a859101262a85939b0001。 //應(yīng)該要根據(jù)數(shù)據(jù)庫表中的實(shí)際 ID BankUserPO acturlReturnOneUser=(cardId)。 (acturlReturnOneUser)。 } 執(zhí)行該測(cè)試用例中的測(cè)試方法 對(duì)示例的說明 本示例是實(shí)現(xiàn)了“雙向一對(duì)多”關(guān)系 雙向一對(duì)多關(guān)系,實(shí)際上是“單向一對(duì)多關(guān)系”與“多對(duì)一關(guān)系”的組合。也就是說我們必須在主控方配置單向一對(duì)多關(guān)系的基礎(chǔ)上,在被控方配置多對(duì)一關(guān)系與其對(duì)應(yīng)。 雙向一對(duì)多關(guān)系除了提高性能的好處之外,還帶來另外一個(gè)優(yōu)點(diǎn),由于建立了雙向關(guān)聯(lián),我們可以在關(guān)聯(lián)雙方中任意一方,訪問關(guān)聯(lián)的另一方,這提供了更豐富靈活的控制手段。
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1