zoukankan      html  css  js  c++  java
  • Hibernate多对多关系映射(建表)

    下边讲述Hibernate多对多关系映射。

    多对多关系的表的结构为:

    两个实体表,还包含一个关系表,关系表为复合主键,如果要使用Hibernate多对多关系映射,则关系表必须只包含两个字段,如果生成了Hibernate多对多关系映射,则中间关系表不会生成实体(即没有对应的pojo类,更没有其映射文件)。

    1、建立表

    1. DROP TABLE user_course ;  
    2. DROP TABLE user ;  
    3. DROP TABLE course ;  
    4. CREATE TABLE user (  
    5.     userid            varchar(20)              primary key ,  
    6.     name              varchar(20)              not null ,  
    7.     age               int                  not null ,  
    8.     birthday          date                 not null 
    9. );  
    10. CREATE TABLE course (  
    11.     id                int                  primary key auto_increment ,  
    12.     title             varchar(50)              not null,  
    13.     description          text                 not null,  
    14.    course_num        int                  not null 
    15. );  
    16. CREATE TABLE user_course (  
    17.     userid            varchar(20)              ,  
    18.     cid               int                  ,  
    19.     primary key (userid, cid ),  
    20.     foreign key (userid) references user (userid) on delete cascade ,  
    21.     foreign key (cid) references course (id) on delete cascade  
    22. ); 

    2、生成映射

    选择三个表一起生成映射,选择主键生成方式的那一步需要注意:

    然后每个表的主键生成方式,各自独立设置,即点击下一步再设置,对于中间表,不需要选择主键生成方式(参考复合主键映射)。

  • 相关阅读:
    329. Longest Increasing Path in a Matrix
    2、evaluate-reverse-polish-notation
    1、minimum-depth-of-binary-tree
    2、替换空格
    C风格字符串和C++string对象的相互转化
    1、二维数组中的查找
    8、sort排序中比较函数的几种应用方式
    1131(★、※)Subway Map
    7、(★、※)判断一个序列是否是二叉查找树的后序、前序遍历序列
    041219~051219流水账
  • 原文地址:https://www.cnblogs.com/LuckyBao/p/5925935.html
Copyright © 2011-2022 走看看