hibernate學習筆記(map映射) – JAVA編程語言程序開發技術文章

當如果一個類中要用到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

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *