亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Hibernate集合映射之Map-----element映射基本類

系統 1982 0

所謂基本類型,就是指java.lang.String,java.lang.Integer等基本類?以及用戶編寫的非實體類,雖然map中的數據是我們的數據庫中的一個表,但我們不必為他創建POJO類及HBM文件

數據庫結構:

?

create ? table ?teamMap?(id? varchar ( 32 ),teamname? varchar ( 32 ));
create ? table ?studentMap?(name? varchar ( 32 ),description? varchar ( 32 ),?team_id? varchar ( 32 ));

?

實體類:(只有Team),其中的student無實體類,用表studentMap的name字段作為key,description作為value

?

package ?Collection.Map.Simple;

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

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

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

public ?String?getTeamname()? ... {
????
return ?teamname;
}

public ? void ?setTeamname(String?teamname)? ... {
????
this .teamname? = ?teamname;
}

public ?Map?getStudents()? ... {
????
return ?students;
}

public ? void ?setStudents(Map?students)? ... {
????
this .students? = ?students;
}

}

?

Team.hbm.xml

?

<? 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 >
< class? name ="Collection.Map.Simple.Team" ?table ="teamMap" ? >
????
< id? name ="id" ?unsaved-value ="null" >
??????
< generator? class ="uuid.hex" ></ generator >
????
</ id >
????
< property? name ="teamname" ?type ="string" ?column ="teamname" ></ property >
????
< map? name ="students" ?table ="studentMap" >
??????
< key? column ="team_id" ></ key >
??????
<!-- ?index代表key,element代表value,一個map標簽只能有一個element? -->
??????
< index? column ="name" ?type ="string" ></ index >
??????
< element? type ="string" ?column ="description" ></ element >
????
</ map >
</ class >

</ hibernate-mapping >

?

Hibernate.cfg.xml

?

<? xml?version='1.0'?encoding='UTF-8' ?>
<! DOCTYPE?hibernate-configuration?PUBLIC
??????????"-//Hibernate/Hibernate?Configuration?DTD?3.0//EN"
??????????"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"
>

<!-- ?Generated?by?MyEclipse?Hibernate?Tools.??????????????????? -->
< hibernate-configuration >

< session-factory >
????
< property? name ="connection.username" > root </ property >
????
< property? name ="connection.url" >
????????jdbc:mysql://localhost:3306/schoolproject?characterEncoding=gb2312
&amp; useUnicode=true
????
</ property >
????
< property? name ="dialect" >
????????org.hibernate.dialect.MySQLDialect
????
</ property >
????
< property? name ="myeclipse.connection.profile" > mysql </ property >
????
< property? name ="connection.password" > 1234 </ property >
????
< property? name ="connection.driver_class" >
????????com.mysql.jdbc.Driver
????
</ property >
????
< property? name ="hibernate.dialect" >
????????org.hibernate.dialect.MySQLDialect
????
</ property >
????
< property? name ="hibernate.show_sql" > true </ property >
????
< property? name ="current_session_context_class" > thread </ property >
????
< property? name ="jdbc.batch_size" > 15 </ property >
????
< mapping? resource ="Collection/Map/Simple/Team.hbm.xml" ? />




</ session-factory >

</ hibernate-configuration >

?

測試代碼:

?

package ?Collection.Map.Simple;


import ?java.io.File;
import ?java.util.Map;

import ?org.hibernate.Session;
import ?org.hibernate.SessionFactory;
import ?org.hibernate.Transaction;
import ?org.hibernate.cfg.Configuration;

public ? class ?Test? ... {


????
public ? static ? void ?main(String[]?args)? ... {

????????String?filePath
= System.getProperty( " user.dir " ) + File.separator + " src/Collection/Map/Simple " + File.separator + " hibernate.cfg.xml " ;
????????File?file
= new ?File(filePath);
????????System.out.println(filePath);
????????SessionFactory?sessionFactory
= new ?Configuration().configure(file).buildSessionFactory();
????????Session?session
= sessionFactory.openSession();
????????Transaction?t
= session.beginTransaction();
????????
????????Team?team
= new ?Team();
????????team.setTeamname(
" team1 " );
????????Map?stuMap
= team.getStudents();
????????stuMap.put(
" stu1 " ,? " stu1?description " );
????????stuMap.put(
" stu2 " ,? " stu2?description " );
????????
????????session.save(team);
????????
????????t.commit();
????????
????}


}

?

運行結果:

Hibernate: insert into teamMap (teamname, id) values (?, ?)
Hibernate: insert into studentMap (team_id, name, description) values (?, ?, ?)
Hibernate: insert into studentMap (team_id, name, description) values (?, ?, ?)

Hibernate集合映射之Map-----element映射基本類型值


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

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

【本文對您有幫助就好】

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

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 亚洲欧洲视频在线 | 成人精品一区二区激情 | 久久综合欧美成人 | 久久不卡免费视频 | 国产欧美亚洲精品第3页在线 | 九九久久99| 亚洲国产精品热久久 | 福利视频欧美一区二区三区 | 亚洲美女精品视频 | 中文字幕伦视频 | 婷婷中文网 | 久久精品亚洲精品国产色婷 | 欧美日韩国产一区二区三区欧 | 欧美日韩一区二区高清免费视频 | 天天透天天操 | 亚洲黄色片视频 | 天天摸夜夜操 | 四虎影院免费网址 | 久久99精品久久久久久久野外 | 日本久久久久亚洲中字幕 | 搜一级毛片 | 奇米综合 | 九九久久免费视频 | 国产精品手机在线观看 | 午夜香蕉网 | 天天操综合网 | 国产高清在线精品一区二区三区 | 日本1区二区三区公司 | 成人免费动作大片黄在线 | 亚洲va国产日韩欧美精品色婷婷 | 欧美亚洲三级 | 四虎播放 | 国产91九色在线播放 | 日日夜夜国产 | 99久久国内精品成人免费 | 日韩欧美一区二区三区在线 | 奇米四色在线观看 | 国产高清一区二区三区视频 | 亚洲精品综合一区在线 | 99视频在线观看视频一区 | 成年免费网站 |