當如果一個類中要用到map類型的數據時。該如何保存呢?
首先看一個簡單的數據。就一個類。一個team類。映射兩表。還有一個表就是用來存放map的key值和value值。
最主要的就是映射文件瞭。看看映射文件該如何配置。
[java]
<class name="com.test.bean.Team" table="Team">
<id name="id" column="id" type="string">
<generator class="uuid"/>
</id>
<property name="name" column="name" type="string"/>
<map name="student" table="student"><!– tabel:存放map表中的key和value對的表 –>
<key column="team_id"></key><!– student表當中與team這個表所對應的外鍵–>
<index column="card_id" type="string"></index><!– student表當中的key值 –>
<element column="description" type="string"></element><!– student表當中的value值 –>
</map>
</class>
上面的map集合中的key值和value值都是string類型的。
如果是value是對象類型的呢?那實際上就是一種一對多的映射瞭。看看map如何映射
這是team.hbm.xml文件;
[java]
<class name="com.test.bean.Team" table="Team">
<id name="id" column="id" type="string">
<generator class="uuid"/>
</id>
<property name="name" column="name" type="string"/>
<map name="student" table="student"><!– tabel:存放map表中的key和value對的表 –>
<key column="team_id"></key><!– student表當中與team這個表所對應的外鍵–>
<index column="card_id" type="string"></index><!– student表當中的key值 –>
<one-to-many class="com.test.bean.Student" /><!– student表當中的value值 –>
</map>
</class> www.aiwalls.com
這是student.hbm.xml文件映射;
[java]
<class name="com.test.bean.Student" table="student">
<id name="id" column="id" type="string">
<generator class="uuid"/>
</id>
<property name="name" column="name" type="string"/>
<property name="cardId" column="card_id" type="string"/>
<property name="age" column="age" type="int"/>
<many-to-one name="team" class="com.test.bean.Team" column="team_id"></many-to-one><!–這裡其實和以前多對一映射差不多–>
</class>
作者:yy008871