黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

Hibernate使用Map實(shí)現(xiàn)多對(duì)多映射

系統(tǒng) 2032 0
數(shù)據(jù)庫結(jié)構(gòu):
create ? table ?team2(id? varchar ( 50 )? primary ? key ,name? varchar ( 50 ));
create ? table ?member2(id? varchar ( 50 )? primary ? key ,name? varchar ( 50 ),age? varchar ( 50 ));
create ? table ?memberAtTeams2(member? varchar ( 50 ),team? varchar ( 50 ),teamRoles? varchar ( 50 ));

實(shí)體對(duì)象:
package ?mapmanytomany;

import ?java.util.HashMap;
import ?java.util.Map;

public ? class ?Team? ... {
???
private ?String?id;
???
private ?String?name;
???
private ?Map?members = new ?HashMap();
public ?String?getId()? ... {
????
return ?id;
}

public ? void ?setId(String?id)? ... {
????
this .id? = ?id;
}



public ?Map?getMembers()? ... {
????
return ?members;
}

public ? void ?setMembers(Map?members)? ... {
????
this .members? = ?members;
}

public ?String?getName()? ... {
????
return ?name;
}

public ? void ?setName(String?name)? ... {
????
this .name? = ?name;
}

}



package ?mapmanytomany;

import ?java.util.HashMap;
import ?java.util.Map;
import ?java.util.Set;

public ? class ?Member? ... {
???
private ?String?id;
???
private ?String?name;
???
private ?String?teamRole;
???
private ?Map?team = new ?HashMap();
???
private ?String?age;
public ?String?getAge()? ... {
????
return ?age;
}

public ? void ?setAge(String?age)? ... {
????
this .age? = ?age;
}


public ?String?getName()? ... {
????
return ?name;
}

public ? void ?setName(String?name)? ... {
????
this .name? = ?name;
}



public ?String?getTeamRole()? ... {
????
return ?teamRole;
}

public ? void ?setTeamRole(String?teamRole)? ... {
????
this .teamRole? = ?teamRole;
}

public ?String?getId()? ... {
????
return ?id;
}

public ? void ?setId(String?id)? ... {
????
this .id? = ?id;
}

public ?Map?getTeam()? ... {
????
return ?team;
}

public ? void ?setTeam(Map?team)? ... {
????
this .team? = ?team;
}




}

?
映射:

?

<? xml?version="1.0"?encoding="utf-8" ?>
<! DOCTYPE?hibernate-mapping?PUBLIC?"-//Hibernate/Hibernate?Mapping?DTD?3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"
>
<!-- ?
????Mapping?file?autogenerated?by?MyEclipse?-?Hibernate?Tools
-->
< hibernate-mapping? package ="mapmanytomany" >
????
< class? name ="Team" ?table ="team2" >
???????
< id? name ="id" ?column ="id" >
?????????
< generator? class ="uuid.hex" ></ generator >
???????
</ id >
???????
< property? name ="name" ?column ="name" />
???????
< map? name ="members" ?table ="memberAtTeams2" ?cascade ="save-update" >
??????????
< key? column ="team" />
??????????
< index? type ="string" ?column ="teamRoles" />
??????????
< many-to-many? class ="Member" ?column ="member" ></ many-to-many >
???????
</ map >
????
</ class >
</ hibernate-mapping >


<? xml?version="1.0"?encoding="utf-8" ?>
<! DOCTYPE?hibernate-mapping?PUBLIC?"-//Hibernate/Hibernate?Mapping?DTD?3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"
>
<!-- ?
????Mapping?file?autogenerated?by?MyEclipse?-?Hibernate?Tools
-->
< hibernate-mapping? package ="mapmanytomany" >
???
????
??????
< class? name ="Member" ?table ="member2" >
???????
< id? name ="id" ?column ="id" >
?????????
< generator? class ="uuid.hex" ></ generator >
???????
</ id >
???????
< property? name ="name" ?column ="name" />
???????
< property? name ="age" ?column ="age" />
???????
< map? name ="team" ?table ="memberAtTeams2" ?inverse ="true" >
??????????
< key? column ="member" />
??????????
< index? type ="string" ?column ="teamRoles" ></ index >
??????????
< many-to-many? class ="Team" ?column ="team" ></ many-to-many >
???????
</ map >
????
</ class >
</ hibernate-mapping >


測(cè)試代碼:

?

???? public ? static ? void ?main(String[]?args)? ... {
????????Configuration?cfg
= new ?Configuration();
????????cfg.configure();
????????SessionFactory?sf
= cfg.buildSessionFactory();
????????Session?session
= sf.openSession();
????????Transaction?t
= session.beginTransaction();

????????Team?team1
= new ?Team();
????????team1.setName(
" 足球隊(duì)-01 " );
????????Team?team2
= new ?Team();
????????team2.setName(
" 足球隊(duì)-02 " );
????????
????????Member?m1
= new ?Member();
????????m1.setName(
" 張三 " );
????????m1.setAge(
" 11 " );
????????m1.getTeam().put(
" 主力守門員 " ,?team1);
????????m1.getTeam().put(
" 候選守門員 " ,?team2);
????????
????????Member?m2
= new ?Member();
????????m2.setName(
" 張四 " );
????????m2.setAge(
" 22 " );
????????m2.getTeam().put(
" 主力中后衛(wèi) " ,?team1);
????????m2.getTeam().put(
" 候選中后衛(wèi) " ,?team2);
????????
????????team1.getMembers().put(
" 主力守門員 " ,?m1);
????????team1.getMembers().put(
" 主力中后衛(wèi) " ,?m2);
????????team2.getMembers().put(
" 候選守門員 " ,?m1);
????????team2.getMembers().put(
" 候選中后衛(wèi) " ,?m2);

????????????session.save(team1);
????????????session.save(team2);
????????t.commit();
????????System.out.println(
" success

Hibernate使用Map實(shí)現(xiàn)多對(duì)多映射


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會(huì)非常 感謝您的哦!??!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論