老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業(yè)提供網(wǎng)站建設(shè)、域名注冊(cè)、服務(wù)器等服務(wù)

如何在Mybatis項(xiàng)目中使用Association

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)如何在Mybatis項(xiàng)目中使用 Association,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

創(chuàng)新互聯(lián)公司專注于南溪網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供南溪營(yíng)銷型網(wǎng)站建設(shè),南溪網(wǎng)站制作、南溪網(wǎng)頁(yè)設(shè)計(jì)、南溪網(wǎng)站官網(wǎng)定制、微信小程序服務(wù),打造南溪網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供南溪網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。

接下來(lái)的文章中,關(guān)于Mybatis的示例,全部來(lái)自于Mybatis代碼中的單元測(cè)試代碼,通過(guò)這些代碼能夠?qū)W習(xí)Mybatis中很有用的知識(shí),這些內(nèi)容在doc文檔中可能只是簡(jiǎn)單提到了,或者有一些文字說(shuō)明,通過(guò)這些單元測(cè)試能更直觀的了解如何在Mybatis使用這些內(nèi)容。

這一節(jié)內(nèi)容為Association關(guān)聯(lián)的結(jié)果查詢,就是在查詢出結(jié)果后,根據(jù)查詢的列和resultMap定義的對(duì)應(yīng)關(guān)系,來(lái)創(chuàng)建對(duì)象并寫入值。

  • association – 一個(gè)復(fù)雜的類型關(guān)聯(lián);許多結(jié)果將包成這種類型
  • 嵌入結(jié)果映射 – 結(jié)果映射自身的關(guān)聯(lián),或者參考一個(gè)
     

(注:“參考一個(gè)”,這里參考一個(gè)是通過(guò)對(duì)象的Key來(lái)唯一確定的,如果Key值一樣,就直接用已經(jīng)存在的這個(gè)對(duì)象。)

association是resultMap中的一個(gè)配置選項(xiàng),下面是用到的類的UML圖:

如何在Mybatis項(xiàng)目中使用 Association

Car對(duì)象中包含了Engine和Brakes兩個(gè)對(duì)象。Mapper是接口對(duì)象。AssociationTest是該測(cè)試對(duì)象。

SQL表結(jié)構(gòu)和數(shù)據(jù):

drop table cars if exists; 
create table cars ( 
 carid integer, 
 cartype varchar(20), 
 enginetype varchar(20), 
 enginecylinders integer, 
 brakestype varchar(20) 
); 
insert into cars (carid, cartype, enginetype, enginecylinders, brakestype) values(1, 'VW',  'Diesel', 4,  null); 
insert into cars (carid, cartype, enginetype, enginecylinders, brakestype) values(2, 'Opel',  null,  null, 'drum'); 
insert into cars (carid, cartype, enginetype, enginecylinders, brakestype) values(3, 'Audi', 'Diesel', 4,  'disk'); 
insert into cars (carid, cartype, enginetype, enginecylinders, brakestype) values(4, 'Ford', 'Gas',  8,  'drum'); 

Mapper.xml文件:

 
   
     
     
     
     
   
   
     
     
   
   
     
   
   
   
   
 

其中的一個(gè)測(cè)試用例:

@Test 
 public void shouldGetAllCars() { 
  SqlSession sqlSession = sqlSessionFactory.openSession(); 
  try { 
   Mapper mapper = sqlSession.getMapper(Mapper.class); 
   List cars = mapper.getCars(); 
   Assert.assertEquals(4, cars.size()); 
   Assert.assertEquals("VW", cars.get(0).getType()); 
   Assert.assertNotNull(cars.get(0).getEngine()); 
   Assert.assertNull(cars.get(0).getBrakes()); 
   Assert.assertEquals("Opel", cars.get(1).getType()); 
   Assert.assertNull(cars.get(1).getEngine()); 
   Assert.assertNotNull(cars.get(1).getBrakes()); 
  } finally { 
   sqlSession.close(); 
  } 
 } 

cars返回值:

如何在Mybatis項(xiàng)目中使用 Association

association是嵌套查詢中最簡(jiǎn)單的一種情況,像上述例子中,一般我們都會(huì)用一個(gè)Car對(duì)面包含所有的屬性,這里的例子使用了嵌套對(duì)象,使對(duì)像的結(jié)構(gòu)更鮮明。不過(guò)一般情況下很少會(huì)拆分一個(gè)對(duì)象為多個(gè),用的多的時(shí)候是多表查詢的嵌套。

上面XML中的

carResult和engieResult,brakesResult都是分別定義,carResult引用了另外兩個(gè)resultMap。

對(duì)于不需要重用嵌套對(duì)象的情況,還可以直接這么寫,把上面的XML修改后:

 
   
   
   
     
     
   
   
 

為了對(duì)比和區(qū)分,這里指修改了Engine,在association元素上增加了屬性javaType,元素內(nèi)增加了result映射。

上述就是小編為大家分享的如何在Mybatis項(xiàng)目中使用 Association了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


網(wǎng)站名稱:如何在Mybatis項(xiàng)目中使用Association
文章鏈接:http://www.xueling.net.cn/article/jcgohs.html

其他資訊

在線咨詢
服務(wù)熱線
服務(wù)熱線:028-86922220
TOP
主站蜘蛛池模板: 成人在线观看18 | 中文字幕久久精品一区二区 | 97婷婷涩涩精品一区 | 中文字幕AV久久无码人妻中文 | 国产成人8x人网站 | 性国产牲交XXXXX视频 | av国产精品毛片一区二区小说 | 经典老熟女ass | 4hu最新网址| 亚洲三及 | 欧美又大又粗又硬又色A片 亚洲精品国产成人片 | 91超碰福利 | 国产精品视频1区2区3区 | 国产真实乱人偷精品人妻 | 中日韩在线观看视频 | 1区2区在线观看 | 久久国产亚洲高清观看 | 日韩精品网址 | 精品九一 | 欧美日韩一二区 | 四虎影院在线免费 | 成人精品一区二区三区免费看 | 无码色偷偷亚洲国内自拍 | 中国农村熟妇性视频 | 美女MM131爽爽爽免费图片 | 性一交一无一伦一精一品 | 又大又黄又粗高潮免费 | 日本丰满少妇高潮呻吟 | 一级片国产 | 瑟瑟综合 | 国产成人欧美综合在线影院 | 亚洲国产精品va在线看黑人动漫 | 成人视屏免费看 | 久久精品国产一区 | www.日 | AV色欲无码人妻中文字幕 | 久久456 | 久久乱码卡一卡2卡三卡四 亚洲影视在线观看 | 国产精品永久久久久久久久久 | 男人日女人逼的视频 | 饥渴少妇浪潮AV麻豆传煤 |