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

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

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

    多對(duì)多關(guān)系關(guān)系映射
    被關(guān)系維護(hù)端 teacher
    package com.hujuan.bean;

    import java.util.HashSet;
    import java.util.Set;

    import javax.persistence.CascadeType;
    import javax.persistence.Column;
    import javax.persistence.Entity;
    import javax.persistence.GeneratedValue;
    import javax.persistence.Id;
    import javax.persistence.ManyToMany;

    @Entity
    public class Teacher {
        
        
    private Integer id;
        
    private String name;
        
    private Set<Student> students = new HashSet<Student>();
        
        
    public Teacher(){
            
        }
        
        
    public Teacher(String name){
            
    this.name = name;
        }
        
        @Id @GeneratedValue
        
    public Integer getId() {
            
    return id;
        }
        
    public void setId(Integer id) {
            
    this.id = id;
        }
        @Column(nullable
    =false,length=10)
        
    public String getName() {
            
    return name;
        }
        
    public void setName(String name) {
            
    this.name = name;
        }
        @ManyToMany(cascade
    =CascadeType.REFRESH,mappedBy="teachers")
        
    public Set<Student> getStudents() {
            
    return students;
        }
        
    public void setStudents(Set<Student> students) {
            
    this.students = students;
        }

        @Override
        
    public int hashCode() {
            
    final int prime = 31;
            
    int result = 1;
            result 
    = prime * result + ((id == null? 0 : id.hashCode());
            
    return result;
        }

        @Override
        
    public boolean equals(Object obj) {
            
    if (this == obj)
                
    return true;
            
    if (obj == null)
                
    return false;
            
    if (getClass() != obj.getClass())
                
    return false;
            
    final Teacher other = (Teacher) obj;
            
    if (id == null) {
                
    if (other.id != null)
                    
    return false;
            } 
    else if (!id.equals(other.id))
                
    return false;
            
    return true;
        }
    }
    關(guān)系維護(hù)端student
    package com.hujuan.bean;

    import java.util.HashSet;
    import java.util.Set;

    import javax.persistence.CascadeType;
    import javax.persistence.Column;
    import javax.persistence.Entity;
    import javax.persistence.GeneratedValue;
    import javax.persistence.Id;
    import javax.persistence.JoinColumn;
    import javax.persistence.JoinTable;
    import javax.persistence.ManyToMany;

    @Entity
    public class Student {

        
    private Integer id;
        
    private String name;
        
    private Set<Teacher> teachers = new HashSet<Teacher>();
        
        
    public Student(){
            
        }
        
        
    public Student(String name){
            
    this.name = name;
        }
        
        @Id @GeneratedValue
        
    public Integer getId() {
            
    return id;
        }
        
    public void setId(Integer id) {
            
    this.id = id;
        }
        @Column(nullable
    =false,length=10)
        
    public String getName() {
            
    return name;
        }
        
    public void setName(String name) {
            
    this.name = name;
        }
        
    //設(shè)置關(guān)聯(lián)表
        
    //inverseJoinColumns 被關(guān)系維護(hù)端在關(guān)聯(lián)表中的外鍵
        
    //joinColumns 關(guān)系維護(hù)端在關(guān)聯(lián)表中的外鍵
        @JoinTable(name="student_teacher",
                inverseJoinColumns
    =@JoinColumn(name="teacher_id"),
                joinColumns
    =@JoinColumn(name="student_id"))
        @ManyToMany(cascade
    =CascadeType.REFRESH)
        
    public Set<Teacher> getTeachers() {
            
    return teachers;
        }
        
    public void setTeachers(Set<Teacher> teachers) {
            
    this.teachers = teachers;
        }
        
        
    public void addTeacher(Teacher teacher){
            
    this.teachers.add(teacher);
        }
        
        
    public void removeTeacher(Teacher teacher){
            
    if(this.teachers.contains(teacher)){
                
    this.teachers.remove(teacher);
            }
        }
    }

    posts - 28, comments - 5, trackbacks - 0, articles - 1

    Copyright © 胡娟

    主站蜘蛛池模板: 国产精品久久久久免费a∨| 国产AV无码专区亚洲AV蜜芽 | 高清免费久久午夜精品| 欧洲 亚洲 国产图片综合| 亚洲制服丝袜精品久久| 亚洲免费人成视频观看| 亚洲午夜电影在线观看高清 | 亚洲人成网站影音先锋播放| 亚洲AV永久无码精品| 亚洲VA中文字幕无码毛片| 亚洲a一级免费视频| 久久亚洲精品人成综合网| 亚洲视频免费播放| www.亚洲成在线| 亚洲性色精品一区二区在线| 蜜芽亚洲av无码一区二区三区| 国产精品久久久久久亚洲影视| 黄色三级三级三级免费看| 手机永久免费的AV在线电影网| 巨胸喷奶水www永久免费| 免费日本一区二区| 2021国内精品久久久久精免费| AA免费观看的1000部电影| 真实乱视频国产免费观看| 免费大黄网站在线观看| 亚洲乱色熟女一区二区三区丝袜| 亚洲av无码国产精品夜色午夜| 亚洲日产2021三区在线| 亚洲精品无码日韩国产不卡av| 高潮毛片无遮挡高清免费视频| 久久性生大片免费观看性| 欧洲人成在线免费| 日本一区二区三区免费高清| 免费国产a国产片高清| 久久久久亚洲AV综合波多野结衣| 亚洲av日韩av天堂影片精品| 激情亚洲一区国产精品| 免费无码婬片aaa直播表情| 国产婷婷成人久久Av免费高清| 99久久久国产精品免费无卡顿| 国产精品极品美女免费观看|