美文网首页
HIbernate多对多关系映射(注解配置)

HIbernate多对多关系映射(注解配置)

作者: 游牧族人 | 来源:发表于2018-05-24 10:07 被阅读28次

以视频信息与用户关系为例:
一个用户可以拥有多个视频,一个视频也可以同时被多个用户所拥有。

@Entity
@Table(name = "videos")
public class Video {

    private int video_id;
    private String video_name;
    private Kind video_kind;
    private Set<User> users = new HashSet<>();

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    public int getVideo_id() {}
    public void setVideo_id(int video_id){}
    public String getVideo_name(){}
    public void setVideo_name(String video_name){}
    ......
    @ManyToMany(cascade = CascadeType.ALL)
    @JoinTable(
            name = "user_video",
            joinColumns = @JoinColumn(name = "video_id"),
            inverseJoinColumns = @JoinColumn(name = "user_id")
    )
    public Set<User> getUsers(){}
    public void setUsers(Set<User> users){}

    public void show(){
        System.out.println("videoId = "+video_id);
        System.out.println("videoName = "+video_name);
        // System.out.println("videoKind = "+getVideo_kind().getKind_name());
    }

}

@Entity
@Table(name = "user")
public class User {

    private int user_id;
    private String user_username;
    private String user_password;
    private Set<Video> videos = new HashSet<>();

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    public int getUser_id(){}
    public void setUser_id(int user_id){}
    public String getUser_username(){}
    public void setUser_username(String user_username){}
    public String getUser_password(){}
    public void setUser_password(String user_password){}

    @ManyToMany(cascade = CascadeType.ALL)
    @JoinTable(
            name = "user_video",
            joinColumns = @JoinColumn(name = "user_id"),
            inverseJoinColumns = @JoinColumn(name = "video_id")
    )
    public Set<Video> getVideos(){}
    public void setVideos(Set<Video> videos){}
}

相关文章

  • SSM框架的常用注解整理

    一.mybatis 1 配置一对多查询和多对多查询的注解方式映射关系: @Results:声明映射关系的配置 Va...

  • HIbernate多对多关系映射(注解配置)

    以视频信息与用户关系为例:一个用户可以拥有多个视频,一个视频也可以同时被多个用户所拥有。

  • hibernate多对多映射之增删改查

    本文是hibernate多对多双向映射的增删改查实践总结笔记,全部基于注解。文中的多对多关系指的是老师有多个学生,...

  • Hibernate 一对多操作

    一 表与表之间关系回顾 一对多 多对多 一对一 二 hibernate一对多操作1 一对多映射配置以客户联系人为列...

  • Hibernate—— 多对多映射

    简介 多对多关联也是常见的一种关联关系,如项目和员工之间就是典型的多对多关系。 ①一个项目可以...

  • hibernate --------多对多映射

    还是用学生和老师来举例子一个老师可以教多个学生,一个学生也可以有多个老师(1)先写老师的实体类package te...

  • 重拾Java EE——Hibernate(3)进阶篇(下)

    1 Hibernate的关联关系映射:(多对多) 以Student 与Course为例,是一个经典的多对多的例子 ...

  • Java:hibernate框架(3)

    一. 表与表之间的关系 二.Hibernate的一对多操作1.一对多映射配置 2.一对多级联保存 3.一对多的级联...

  • Hiberbate关系映射

    作为一种轻量级的关系映射工具,Hibernate支持各种关系映射,例如:多对一、一对多和一对一的数据库表关系,通过...

  • Hibernate-Annotation

    课程地址 使用hibernate注解的目的 为了简化ORM映射文件(*.hbm)繁琐的配置。注解需要做的是映射文件...

网友评论

      本文标题:HIbernate多对多关系映射(注解配置)

      本文链接:https://www.haomeiwen.com/subject/eepjjftx.html