<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    溫故知新:hibernate_10_表關(guān)聯(lián)_多對(duì)一雙向關(guān)聯(lián)(注解配置)

    和基于配置文件的多對(duì)一雙向關(guān)聯(lián)大體一致,測(cè)試類無需變動(dòng),撤銷XML的配置文件,將hibernate.cfg.xml中hbm的引入換成class的引入,如下
     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <!DOCTYPE hibernate-configuration PUBLIC
     3         "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
     4         "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
     5 <hibernate-configuration>
     6     <session-factory name="sessionFactory">
     7         <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
     8         <property name="hibernate.connection.url">jdbc:mysql://localhost/hibernate_begin</property>
     9         <property name="hibernate.connection.username">root</property>
    10         <property name="hibernate.connection.password">root</property>
    11         <property name="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</property>
    12         <property name="hibernate.hbm2ddl.auto">update</property>
    13         <property name="show_sql">true</property>
    14         <!-- <mapping resource="domain/Course.hbm.xml"/>
    15         <mapping resource="domain/Student.hbm.xml"/>
    16         <mapping resource="domain/StudentCourse.hbm.xml"/> -->
    17         <mapping class="domain.Student"/>
    18         <mapping class="domain.Teacher"/>
    19     </session-factory>
    20 </hibernate-configuration>
    21 
    同時(shí)為相關(guān)的實(shí)體類添加注解
    Student
     1 package domain;
     2 
     3 import javax.persistence.Entity;
     4 import javax.persistence.GeneratedValue;
     5 import javax.persistence.Id;
     6 import javax.persistence.JoinColumn;
     7 import javax.persistence.ManyToOne;
     8 import javax.persistence.Table;
     9 
    10 @Entity
    11 @Table(name="t_student")
    12 public class Student {
    13     
    14     private int id;
    15     private String name;
    16     private String grade;
    17     private Teacher teacher;
    18     
    19     public Student() {
    20         super();
    21     }
    22     
    23     public Student(String name, String grade, Teacher teacher) {
    24         super();
    25         this.name = name;
    26         this.grade = grade;
    27         this.teacher = teacher;
    28     }
    29     
    30     //設(shè)置自增主鍵
    31     @Id
    32     @GeneratedValue
    33     public int getId() {
    34         return id;
    35     }
    36     public void setId(int id) {
    37         this.id = id;
    38     }
    39     public String getName() {
    40         return name;
    41     }
    42     public void setName(String name) {
    43         this.name = name;
    44     }
    45     public String getGrade() {
    46         return grade;
    47     }
    48     public void setGrade(String grade) {
    49         this.grade = grade;
    50     }
    51     
    52     //為實(shí)體類添加映射和外鍵
    53     @ManyToOne
    54     @JoinColumn(name="tid")
    55     public Teacher getTeacher() {
    56         return teacher;
    57     }
    58     public void setTeacher(Teacher teacher) {
    59         this.teacher = teacher;
    60     }
    61     
    62 }
    63 

    Teacher
     1 package domain;
     2 
     3 import java.util.Set;
     4 
     5 import javax.persistence.Entity;
     6 import javax.persistence.GeneratedValue;
     7 import javax.persistence.Id;
     8 import javax.persistence.OneToMany;
     9 import javax.persistence.Table;
    10 
    11 import org.hibernate.annotations.LazyCollection;
    12 import org.hibernate.annotations.LazyCollectionOption;
    13 
    14 @Entity
    15 @Table(name="t_teacher")
    16 public class Teacher {
    17     
    18     private int id;
    19     private String name;
    20     private String course;
    21     private Set<Student> studs;
    22     
    23     public Teacher() {
    24         super();
    25     }
    26     
    27     public Teacher(String name, String course) {
    28         super();
    29         this.name = name;
    30         this.course = course;
    31     }
    32     
    33     @Id
    34     @GeneratedValue
    35     public int getId() {
    36         return id;
    37     }
    38     public void setId(int id) {
    39         this.id = id;
    40     }
    41     public String getName() {
    42         return name;
    43     }
    44     public void setName(String name) {
    45         this.name = name;
    46     }
    47     public String getCourse() {
    48         return course;
    49     }
    50     public void setCourse(String course) {
    51         this.course = course;
    52     }
    53 
    54     //mappedBy就意為將關(guān)系維護(hù)給到對(duì)方的teacher屬性,相當(dāng)于inverse=true
    55     @OneToMany(mappedBy = "teacher")
    56     //LazyCollectionOption.EXTRA相當(dāng)于lazy="extra"
    57     @LazyCollection(LazyCollectionOption.EXTRA)
    58     public Set<Student> getStuds() {
    59         return studs;
    60     }
    61 
    62     public void setStuds(Set<Student> studs) {
    63         this.studs = studs;
    64     }
    65 
    66 }
    67 

    posted on 2015-01-21 10:41 都較瘦 閱讀(181) 評(píng)論(0)  編輯  收藏 所屬分類: ORMFramework

    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    導(dǎo)航

    統(tǒng)計(jì)

    公告

    博客定位:囿于目前的水平,博客定位在記錄自己的學(xué)習(xí)心得和隨手的練習(xí)

    常用鏈接

    留言簿

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    搜索

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 中文字幕免费在线观看| 亚洲色偷精品一区二区三区| 国产精品无码素人福利免费| 未满十八18禁止免费无码网站 | 亚洲国产成人高清在线观看| 久久精品国产这里是免费| 久久精品国产精品亚洲艾草网| 日韩免费高清一级毛片在线| 国产四虎免费精品视频| 97在线视频免费公开视频| 美女18毛片免费视频| 亚洲熟妇无码八V在线播放 | 日本免费人成在线网站| 亚洲高清毛片一区二区| 亚洲嫩草影院在线观看| 亚洲精品成人图区| 四虎免费大片aⅴ入口| www.免费在线观看| 色欲A∨无码蜜臀AV免费播| 成年免费a级毛片免费看无码| 羞羞漫画小舞被黄漫免费| 亚洲精品无码久久久久秋霞| 久久精品亚洲AV久久久无码| 亚洲精品一级无码鲁丝片 | 亚洲人成在线观看| 亚洲AV永久精品爱情岛论坛| 久久久精品国产亚洲成人满18免费网站 | 日韩国产欧美亚洲v片| 亚洲国产综合久久天堂| 四虎在线播放免费永久视频 | 国产亚洲成AV人片在线观黄桃| 亚洲国产精品无码久久九九| 精品成在人线AV无码免费看 | 亚洲Av高清一区二区三区| 亚洲成a人片毛片在线| 亚洲精品美女视频| 亚洲国产午夜电影在线入口 | 一个人看www在线高清免费看| 免费看片在线观看| 男人的好看免费观看在线视频| a级毛片毛片免费观看久潮|