OnetoOne annotation配置:
实体类:
Husband.java
package com.sshcp.model; import javax.persistence.CascadeType; import javax.persistence.Entity; import javax.persistence.FetchType; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.OneToOne; @Entity public class Husband { private int id ; private String name ; private Wife wife ; @Id @GeneratedValue public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } // cascade=CascadeType.ALL 级联对象进行存储 // mappedBy="husband" @OneToOne(mappedBy="husband",cascade=CascadeType.ALL,fetch = FetchType.LAZY) public Wife getWife() { return wife; } public void setWife(Wife wife) { this.wife = wife; } }
Wife.java
package com.sshcp.model; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.OneToOne; @Entity public class Wife { private int id ; private String name ; private Husband husband ; @Id @GeneratedValue public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } @OneToOne public Husband getHusband() { return husband; } public void setHusband(Husband husband) { this.husband = husband; } }
数据库交互代码:
public void saveOneToOne() { // TODO Auto-generated method stub Husband husband = new Husband(); Wife wife = new Wife(); husband.setName("xiaofengxbf"); wife.setName("luoluo"); wife.setHusband(husband); this.getHibernateTemplate().save(husband); this.getHibernateTemplate().save(wife); }
经过测试插入数据库即可,sql语句:
Hibernate: insert into Husband (name) values (?)
Hibernate: insert into Wife (husband_id, name) values (?, ?)
相关推荐
在Java世界中,ORM(对象关系映射)框架如Hibernate极大地简化了数据库操作。本话题主要探讨的是Hibernate中的一种关联映射方式——一对一(One-to-One)单向外键关联。这种关联模式通常用于两个实体之间存在唯一...
在Hibernate的源码中,`OneToOne`注解会被`org.hibernate.cfg.annotations.EntityBinder`类处理。这个类会解析注解,构建`JoinColumn`对象,并将其添加到元数据中,以便在SQL生成和查询过程中使用。 ### 六、性能...
在Java的持久化框架Hibernate中,一对一(One-to-One)映射是一种常见关系映射,用于表示两个实体之间一对一的关联。本篇文章将详细探讨Hibernate中实现一对一映射的两种方式,并结合源码分析其原理。 一、主键外键...
**标题:“Hibernate 一对一详细配置”** 在Java的持久化框架Hibernate中,一对一(One-to-One)关联映射是常见的关系映射类型之一。它用于表示两个实体之间一对一的关联关系,即一个实体对应另一个实体的唯一实例...
这可以通过在映射文件中设置`<one-to-one>`标签或者使用Java注解`@OneToOne`来实现。 2. **共享主键关联**:两个实体类共用同一个主键,这意味着它们在数据库中实际上是同一个表的不同视图。这可以通过`@...
**标题**: Hibernate 一对一实例 **描述**: 本示例提供了关于Hibernate中一对一关系映射的源代码,其中包含了详细的注释,便于理解和学习。 **标签**: Hibernate **压缩包子文件的文件名称列表**: Hibernate(一对...
hibernate_onetoone.part4.rar
hibernate_onetoone.part5.rar
**标题:“Hibernate 注解大全”** 在Java世界中,Hibernate是一个非常流行的持久化框架,它极大地简化了数据库操作。本文将深入探讨Hibernate的注解,这些注解是ORM(对象关系映射)的重要组成部分,帮助开发者以...
第三部分hibernate_onetoone.part3共5部分 。全部下载需要10分
hibernate_onetoone.part2.rar <br>共5部分。 需要全部才能解压
本篇将详细阐述Hibernate中的对象三状态、一对一(OneToOne)、一对多(OneToMany)以及多对多(ManyToMany)关系映射。 一、Hibernate对象三状态 1. 游离态(Detached):对象在应用程序中创建,但尚未与Session...
在Java持久化框架Hibernate中,一对一(One-to-One)关系是一种常见的对象关系映射(ORM)配置,它用于表示两个实体之间的一种特殊关联,其中每个实体最多只能与另一个实体的一个实例相关联。这种关系在数据库层面...
Hibernate是一种流行的Java持久化框架,它允许开发人员将对象模型转换为关系数据库模型。在Hibernate中,关系注解用于在实体类中定义不同类型的数据库关系,如一对一、一对多、多对多等。以下是关于Hibernate关系...
在Java的持久化框架Hibernate中,`@OneToOne`注解用于表示一对一的关联关系,而唯一外键一对一双向关联则是这种关系的一种具体实现方式。这篇文章将深入探讨这一概念,帮助你理解如何在实际开发中应用。 首先,我们...
在Java开发中,Hibernate作为一款强大的对象关系映射(ORM)框架,极大地简化了数据库操作。本文将深入探讨Hibernate中实体映射的一对一关联关系的两种实现方式:共享主键方式和唯一外键方式。 首先,我们要理解...
在Java世界中,Hibernate是一个非常流行的ORM(对象关系映射)框架,它允许开发者将数据库操作转换为面向对象的方式,从而提高开发效率。本主题聚焦于“Hibernate双向一对一关联映射”的注解实现,这是一种高级的...
在Hibernate中,我们可以使用`@OneToOne`和`@PrimaryKeyJoinColumn`注解来实现这种关联。`@OneToOne`用于声明一对一的关联,而`@PrimaryKeyJoinColumn`则指定主键同时也是外键的列。 例如,假设我们有两个实体类,...
在Java的持久化框架Hibernate中,一对一(One-to-One)关联是对象关系映射(ORM)中的一个重要概念。这种关联关系意味着一个实体最多只能与另一个实体的实例进行关联,反之亦然。本示例将深入讲解如何在Hibernate中...
在Java的持久化框架Hibernate中,注解是用于对象关系映射(ORM)的重要工具,它简化了传统XML配置的方式,使代码更加简洁、易读。本篇文章将深入探讨Hibernate中注解的一对多、多对多和一对一关系映射。 ### 一对多...