hibernate關系映射(xml配置)


//Street.hbm.xml 

<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">  
<hibernate-mapping package="com.aegop.mto.pojo">  
    <!-- 標識一個類的xml映射,name為類名,table為表名 -->  
    <class name="Street" table="Streets">  
        <!-- 主鍵的設置,generator標識主鍵生成方式,因為native便於數據庫的移植所以.嘿嘿!你懂的 -->  
        <id name="id" type="int">  
            <column name="Id"/>  
            <generator class="native"/>  
        </id>  
        <!-- 這里配了該類一個屬性街道名稱 name屬性字段,column,數據庫對應列 -->  
        <property name="streetName" type="string" column="StreetName" />  
        <!-- 這里同上,寫法不同而已 -->  
        <property name="streetPhone" type="string">  
            <column name="Streetphone" />  
        </property>  
        <!-- 下面同樣是配該類一個屬性,只是比較特殊而已! DisrtictId它是對應實體(數據庫中主鍵,hibernate有缺省)如果加property-ref=DistrictId,效果是一樣!此屬性用在有聯合主鍵的時候-->  
        <many-to-one name="district" class="District">  
            <column name="DistrictId"/>  
        </many-to-one>  
    </class>  
</hibernate-mapping>  

//當column不指定的時候默認是和name相同 

//這里簡單介紹,<property>簡單類型的配置標簽,<many-to-one>多對一的配置標簽,以此xml為例,需要注意的是該xml是一個街道的實體映射,也就是說一個區可以包含多個街道,所以這里街道配置了和區的多對一關系! 
//name="district";這個仍然代表該類字段,不同的是class="District",他的類型沒有用type,而是class!因為不是一個簡單數據類型. 

//這個只是一個多對一的簡單表述,其實一對一,多對多...等!道理是一樣的 

//District.hbm.xml 

<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">  
<hibernate-mapping package="com.aegop.mto.pojo">  
    <class name="District" table="Districts">  
        <id name="id" type="int">  
            <column name="Id"/>  
            <generator class="native"/>  
        </id>  
        <property name="districtName" type="string">  
            <column name="DistrictName"/>  
        </property>  
          
    </class>  
</hibernate-mapping>  

//在使用這個關系配置,到時候你一定會遇到跨session操作,:)到時候在聊!筆記共享

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM