zoukankan      html  css  js  c++  java
  • hibernate中1对1的注解配置

    hibernate中1对1的注解配置分为:外键关联映射和主键关联映射

    1.外键配置

    //一方
    @Entity
    @Table(name="test_classinfo")
    public class ClassInfo {
      @Id
      @SequenceGenerator(name="seqClassInfo",sequenceName="seq_test_classinfo")
      @GeneratedValue(generator="seqClassInfo")
      private Integer cid;
      private String cname;
      @OneToOne(mappedBy="classInfo")
      private Students students;

      set,get方法省略

    }

    //多方

    @Entity
    @Table(name="test_student")
    public class Students {
      @Id
      @SequenceGenerator(name="seqStudents",sequenceName="seq_test_student")
      @GeneratedValue(generator="seqStudents")
      private Integer sid;
      private String sname;
      @ManyToOne(cascade=CascadeType.ALL)
      @JoinColumn(name="cid",unique=true)
      private ClassInfo classInfo;

      set,get方法省略

    }

    2.主键关联映射

    @Entity
    @Table(name="test_husband")
    public class Husband {
      @Id
      @SequenceGenerator(name="seqHusband",sequenceName="seq_test_husband")
      @GeneratedValue(generator="seqHusband")
      @Column(name="marriage_id")
      private Integer marriageId;
      private String hname;
      @OneToOne(cascade=CascadeType.ALL)
      @PrimaryKeyJoinColumn               //@PrimaryKeyJoinColumn :说明Wife的主键是由Husband的主键决定
      private Wife wife;

      set,get方法省略

    }

    @Entity
    @Table(name="test_wife")
    public class Wife {
      /*
      * <id name="marriageId" column="marriage_Id" >
          <generator class="foreign">
            <param name="property">husband</param>
          </generator>
       </id>
      */
      @Id
      @GenericGenerator(name="seqwife",strategy="foreign",parameters={@Parameter(name="property",value="husband")})
      @GeneratedValue(generator="seqwife")
      @Column(name="marriage_id")
      private Integer marriageId;
      private String wname;
      @OneToOne(mappedBy="wife")
      private Husband husband;

      set,get方法省略

    }

  • 相关阅读:
    shp2pgsql向postgresql导入shape数据
    node.js的Promise库-bluebird示例
    iOS中点击事件失效的解决办法
    [PHP] 获取IP 和JS获取IP和地址
    [Bootstrap ] 模态框(Modal)插件
    [html][javascript] 关于SVG环形进度条
    [javascript] js实现小数的算术运算方法
    [GO] linux 下安装GO
    小知识点:session的存放位置
    [linux] linux的top命令参数详解
  • 原文地址:https://www.cnblogs.com/hwgok/p/5380838.html
Copyright © 2011-2022 走看看