Hibernate架構(3) —— ORM中繼資料(配置詳解)__Java架構

來源:互聯網
上載者:User
一、orm中繼資料樣本

<hibernate-mapping>

    <class name=”cn.it.domain.Customer” table=”cst_customer”>

        <id name=”cust_id” column=”cust_id”>

            <generator class=”native”></generator>

        </id>

        <property name=”cust_name” column=”cust_name”></property>

        <property name=”cust_source” column=”cust_source”></property>

        <property name=”cust_industry” column=”cust_industry”></property>

        <property name=”cust_level” column=”cust_level”></property>

        <property name=”cust_linkman” column=”cust_linkman”></property>

        <property name=”cust_phone” column=”cust_phone”></property>

        <property name=”cust_mobile” column=”cust_mobile”></property>

    </class>

</hibernate-mapping>
二、根項目 1. 配置的根項目

    <hibernate-mapping> </hibernate-mapping>

   用來填寫hibernate映射。 2. 配置根項目的屬性 package

package屬性:填寫一個包名。

在元素內部凡是需要完整類名的屬性,可以直接使用簡單類名。

    <hibernate-mapping package=“cn.it.domain”> 填寫實體類所在的包
三、class元素

<class name=”Customer” table=”cst_customer”> 1. 作用:配置實體與表的對應關係 2. 屬性作用:

name屬性:完整類名

table屬性:資料庫表名


四、類內部映射 1. 主鍵映射(id元素)

<id name=”cust_id” column=”cust_id”>

    generator:主鍵建置原則

    <generatorclass=”native”></genernator>

</id>

    A  作用:配置主鍵映射的屬性

    B  屬性作用:

        1. name屬性:填寫主鍵對應屬性名稱

        2. column(可選)屬性:填寫表中的主鍵列名。預設值:列名會預設使用屬性名稱

        3. type(可選)屬性:填寫該列(屬性)的類型。Hibernate會自動檢測實體的屬性類型。

            每個類型有三種填法:Java類型 | hibernate類型 | SQL類型

        4. not-null(可選)屬性:配置該屬性(列)是否不可為空,預設值:false

        5. length(可選)屬性:設定資料庫中列的長度。預設值:使用資料庫類型的最大長度


2. 普通屬性對應(property元素)

<property name=”cust_name” column=“cust_name”>

</property>

    A  作用:除id之外的普通屬性對應

    B  屬性作用:

        1. name:填寫主鍵對應屬性名稱

        2. column(可選):填寫表中的主鍵列名,列名預設使用屬性名稱。<property name=”cust_name”>

        3. type(可選)屬性:填寫該列(屬性)的類型。Hibernate會自動檢測實體的屬性類型,也可以手動指定類型,

            方法有三種:Java類型 | hibernate類型 | SQL類型 :

            a Java類型:

                <property name=”cust_name” column=“cust_name” type="java.lang.String">

                </property>

            b hibernate類型:

            c SQL類型:     

                <propertyname=”cust_name” column=”cust_name”>

                    <column name="cust_name" sql-type="varchar"></column>

                </property>            注意:開發中,不需要指定,使用系統預設。

        4. not-null(可選)屬性:配置該屬性(列)是否不可為空,預設值:false

        5. length(可選)屬性:設定資料庫中列的長度。預設值:使用資料庫類型的最大長度,

            例如“cust_name”在資料庫中是varchar類型,最長為255位。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.