日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Hibernate关于父类子类的映射

發(fā)布時間:2024/4/15 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Hibernate关于父类子类的映射 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

怕忘記,把栗子貼上來

以Person類和Student類為例

public class Person {private Integer id;private String name;private int age;//省略setter、getter代碼 }

?

public class Student extends Person {private String school;//省略setter、getter代碼 }

第一種方式:只有一張表的

直接貼映射文件內容

<hibernate-mapping package="com.zcd.exercise.subclass"><class name="Person" table="PERSONS" discriminator-value="PERSON"><id name="id" type="java.lang.Integer"><column name="ID" /><generator class="native" /></id><discriminator type="string"><column name="TYPE"></column></discriminator><property name="name" type="java.lang.String"><column name="NAME" /></property><property name="age" type="int"><column name="AGE" /></property><subclass name="Student" discriminator-value="STUDENT"><property name="school" type="string" column="SCHOOL"></property></subclass></class> </hibernate-mapping>

第二種方式:分兩張表存儲

<hibernate-mapping package="com.zcd.exercise.unionSubclass"><class name="Person" table="PERSONS"><id name="id" type="java.lang.Integer"><column name="ID" /><generator class="hilo" /></id><property name="name" type="java.lang.String"><column name="NAME" /></property><property name="age" type="int"><column name="AGE" /></property><union-subclass name="Student" table="STUDENTS"><property name="school" type="string"><column name="SCHOOL"></column></property></union-subclass></class> </hibernate-mapping>

?第三種方式:也是分兩張表但是會把子類特有的屬性單獨存放在一張表,也就是相當于把一條記錄拆開放在兩張表中。

<hibernate-mapping package="com.zcd.exercise.joinedSubclass"><class name="Person" table="PERSONS"><id name="id" type="java.lang.Integer"><column name="ID" /><generator class="native" /></id><property name="name" type="java.lang.String"><column name="NAME" /></property><property name="age" type="int"><column name="AGE" /></property><joined-subclass name="Student" table="STUDENTS"><key column="STUDENT_ID"></key><property name="school" type="string" column="SCHOOL"></property></joined-subclass></class> </hibernate-mapping>

?

轉載于:https://www.cnblogs.com/GooPolaris/p/7920024.html

超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生

總結

以上是生活随笔為你收集整理的Hibernate关于父类子类的映射的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。