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方法省略

}

hibernate中1对1的注解配置的更多相关文章

  1. Hibernate-ORM:16.Hibernate中的二级缓存Ehcache的配置

    ------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 本篇博客讲述Hibernate中的二级缓存的配置,作者将使用的是ehcache缓存 一,目录 1.二级缓存的具 ...

  2. hibernate中多对多的注解配置

    hibernate多对多的注解配置中的自动生成中间表的配置: @Entity@Table(name="test_student")public class Students { @ ...

  3. Hibernate注解配置

    在之前的第一次对框架的实际应用中,我使用的是Hibernate的xml配置方法,xml配置方法非常繁琐, 还是推荐所有使用Hibernate的人使用注解方式进行配置,在这篇文章中,我将列举出我们常用的 ...

  4. Mingyang.net:注解配置Hibernate时报错Unknown Entity

    注解配置时报错:org.hibernate.MappingException: Unknown entity: net.mingyang.cms.bean.User org.hibernate.Map ...

  5. Annotation(二)——Hibernate中注解的开发

    在利用注解开发数据库持久层以前,需要学习一个规范JPA(Java Persistence API),这也是SUN公司提出的数据库的持久化规范.就类似于JDBC,Servlet,JSP等规范一样.而Hi ...

  6. Hibernate注解配置与XML配置区别

    注解配置的方式与xml很很多类似: 首先是需要加入4个jar包:hibernate-commons-annotations.jar . hibernate-annotations.jar.ejb3-p ...

  7. Spring 中的事务操作、注解、以及 XML 配置

    事务 事务全称叫数据库事务,是数据库并发控制时的基本单位,它是一个操作集合,这些操作要么不执行,要么都执行,不可分割.例如我们的转账这个业务,就需要进行数据库事务的处理. 转账中至少会涉及到两条 SQ ...

  8. Hibernate中用注解配置一对多双向关联和多对一单向关联

    Hibernate中用注解配置一对多双向关联和多对一单向关联 Hibernate提供了Hibernate Annotations扩展包,使用注解完成映射.在Hibernate3.3之前,需单独下载注解 ...

  9. Hibernate中注解的开发

    转自:https://blog.csdn.net/liujiahan629629/article/details/22335563 在利用注解开发数据库持久层以前,需要学习一个规范JPA(JavaPe ...

随机推荐

  1. Ionic 安装最新版本错误

    更新Ionic版本时 npm i -g ionic@latest 出现如下错误 npm ERR! Unexpected end of input at 1:14782 如下图 解决方法 使用如下命令: ...

  2. jQuery与DOM对象的转换

    一.jQuery与DOM对象的转换. 1.jQuery对象转换为DOM对象:$cr[0] 或 $cr.get(0) $cr为jQuery对象 2.DOM对象转换为jQuery对象:$(cr) cr为D ...

  3. 一个spring boot集成dubbo的小例子

    请移步github,介绍和代码均在上面了:https://github.com/wuxun1997/voicebox 这里再多说两句.github上的这个小例子默认使用组播作为注册中心,你也可以把组播 ...

  4. 在doc下面执行zpl语言 Copy 文件名 lpt1

    在doc下面执行zpl语言 Copy 文件名 lpt1 测试斑马条码打印机并口是否能正常通讯: 1.Zebra打印机安装好标签和碳带,且打印机进入Ready状态.2.电脑端用Notepad编写输入如下 ...

  5. 动态爬虫——selenium2搭载phantomjs入门范例

    这是我学习爬虫比较深入的一步了,大部分的网页抓取用urllib2都可以搞定,但是涉及到JavaScript的时候,urlopen就完全傻逼了,所以不得不用模拟浏览器,方法也有很多,此处我采用的是sel ...

  6. eclipse使用git提交项目

    eclipse使用git提交项目有2种方式:一种是git命令窗口,另一种是eclipse自带git插件(跟svn插件一样使用) 一.使用git命令窗口提交项目 1.首先官网下载git并安装,然后配置用 ...

  7. innodb的锁、update单条记录的花费时间压测

    观察innodb的锁时间,需要关注: mysqladmin extended-status -r -i 1 -uroot | grep "Innodb_row_lock_time" ...

  8. 退出循环break,在while、for、do...while、循环中使用break语句退出当前循环,直接执行后面的代码。

    在while.for.do...while循环中使用break语句退出当前循环,直接执行后面的代码. 格式如下: for(初始条件;判断条件;循环后条件值更新) { if(特殊情况) {break;} ...

  9. 开发框架-APP:Hybird App

    ylbtech-开发框架-APP:Hybird App Hybrid App(混合模式移动应用)是指介于web-app.native-app这两者之间的app,兼具“Native App良好用户交互体 ...

  10. 操作系统-百科:Kylin (中国自主知识产权操作系统)

    ylbtech-操作系统-百科:Kylin (中国自主知识产权操作系统) Kylin操作系统是国家高技术研究发展计划(863计划)的重大成果之一,是以国防科技大学为主导,与中软.联想等单位联合设计和开 ...