日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Hibernate Map映射的composite-element案例

系統(tǒng) 1917 0

?在這個案例的hbm文件中,只有一個持久話類Team,Member作為class引入,map的關(guān)系被映射到teammember表中,

?

數(shù)據(jù)庫結(jié)構(gòu):

CREATE ? TABLE ?`team5`?(
??`id`?
varchar ( 50 )? NOT ? NULL ,
??`name`?
varchar ( 50 )? default ? NULL ,
??
PRIMARY ? KEY ??(`id`)
)?ENGINE
= InnoDB? DEFAULT ?CHARSET = gb2312;

CREATE ? TABLE ?`teammembers`?(
??`teamid`?
varchar ( 50 )? NOT ? NULL ,
??`name`?
varchar ( 50 )? default ? NULL ,
??`age`?
varchar ( 50 )? default ? NULL ,
??`teamrole`?
varchar ( 50 )? default ? NULL ,
)?ENGINE
= InnoDB? DEFAULT ?CHARSET = gb2312;


持久類:

?

package ?compositeelement;

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

public ? class ?Member? ... {
???
private ?String?id;
???
private ?String?name;
???
private ?Team?team;
???
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?getId()? ... {
????
return ?id;
}

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

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

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





}



package ?compositeelement;

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;
}

}


映射文件:

?

<? 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 ="compositeelement" >
????
< import? class ="Member" />
????
< class? name ="Team" ?table ="team5" >
???????
< id? name ="id" ?column ="id" >
?????????
< generator? class ="uuid.hex" ></ generator >
???????
</ id >
???????
< property? name ="name" ?column ="name" />
???????
< map? name ="members" ?table ="teammembers" ??inverse ="false" ??cascade ="save-update" >
??????????
< key? column ="teamid" />
??????????
< index? column ="teamrole" ?type ="string" ></ index >
??????????
< composite-element? class ="Member" >
?????????????
< parent? name ="team" />
?????????????
< property? name ="name" />
?????????????
< property? name ="age" ></ property >
??????????
</ composite-element >
???????
</ map >
????
</ class >
</ hibernate-mapping >

測試代碼:
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 " );
????
????????
????????Member?m1
= new ?Member();
????????m1.setName(
" 張三 " );
????????m1.setAge(
" 11 " );

????????
????????Member?m2
= new ?Member();
????????m2.setName(
" 張四 " );
????????m2.setAge(
" 22 " );
????????
????????
????????
????????team1.getMembers().put(
" 守門員 " ,?m1);
????????team1.getMembers().put(
" 中后衛(wèi) " ,?m2);


????????session.save(team1);
????????
????????

????????t.commit();
????????System.out.println(
" success " );

????}

運(yùn)行結(jié)果:
Hibernate: insert into team5 (name, id) values (?, ?)
Hibernate: insert into teammembers (teamid, teamrole, name, age) values (?, ?, ?, ?)
Hibernate: insert into teammembers (teamid, teamrole, name, age) values (?, ?, ?, ?)

Hibernate Map映射的composite-element案例


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

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

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

【本文對您有幫助就好】

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

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 紫金县| 沙坪坝区| 根河市| 南木林县| 宁陕县| 灌云县| 驻马店市| 休宁县| 舒兰市| 中宁县| 梅州市| 丰镇市| 岚皋县| 政和县| 建水县| 吉安县| 玛纳斯县| 威海市| 延安市| 丰台区| 大埔县| 潜江市| 巴中市| 区。| 丹寨县| 临漳县| 瓦房店市| 吉安县| 牡丹江市| 武义县| 郯城县| 濉溪县| 海淀区| 谢通门县| 会理县| 武汉市| 贡山| 西畴县| 高邮市| 泾阳县| 厦门市|