zoukankan      html  css  js  c++  java
  • Hibernate 组合主键映射

      在开发过程中创建数据库表时,有时候会发现单纯的创建一个主键是不可行的,有时候就需要多个字段联合保持唯一,本文讲述如何创建组合主键的映射。

      例如:记录一个班的考试成绩。学生跟科目是多对多的关系,只有一个学生和一门课程保持唯一时才能确保这个关系成立。

    1.创建实体。

    2.创建联合组件的实体(这个实体需要实现序列化接口,需要重写equals方法)

     

    3.写映射文件。

      name表示实体中哪个字段表示组合主键,class表示那个类是组合主键。

      <composite-id name="scoreId" class="ScoreId"></composite-id>

      在上面标签中加入组合主键的属性。

       <key-property name="stuId"></key-property>
       <key-property name="subjectId"></key-property>

    4.SchemaExport

      这个工具可以直接使用实体和映射关系生成数据库表。
      Configuration cfg = new Configuration().configure();
            SchemaExport se = new SchemaExport(cfg);
            //第一个参数是否生成ddl脚本,第二个参数是否执行到数据库
            se.create(true, true);
            数据库删除原来的表,创建新的表。

      以下为hibernate打印的sql语句。

    注:本文是在学习期间根据网上视频写的学习笔记,如有侵权请联系删除!

  • 相关阅读:
    2016012061 小学四则运算练习软件项目报告
    阅读《构建之法》的几点思考
    软件工程之我见
    作业五
    结对作业
    第4.17章读书笔记
    week_2 四则运算
    第1.2.16章读书笔记
    我与软件工程
    团队项目Alpha冲刺阶段之学习总结
  • 原文地址:https://www.cnblogs.com/wuyx/p/7921809.html
Copyright © 2011-2022 走看看