`

7.hibernate一对一双向外键关联,xml映射

阅读更多
stuidcard表结构:

student表结构:



package com.bjsxt.hibernate;

public class Student {
	
	private int id;
	private String name;
	
	private int age;
	private String sex;
	private boolean good;
	private StuIdCard stuIdCard;
	public StuIdCard getStuIdCard() {
		return stuIdCard;
	}
	public void setStuIdCard(StuIdCard stuIdCard) {
		this.stuIdCard = stuIdCard;
	}
	public boolean isGood() {
		return good;
	}
	public void setGood(boolean good) {
		this.good = good;
	}
	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;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public String getSex() {
		return sex;
	}
	public void setSex(String sex) {
		this.sex = sex;
	}
	
	
	
}



package com.bjsxt.hibernate;

public class StuIdCard {
	private int id;
	private String num;
	private Student student;
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getNum() {
		return num;
	}
	public void setNum(String num) {
		this.num = num;
	}
	public Student getStudent() {
		return student;
	}
	public void setStudent(Student student) {
		this.student = student;
	}
	
}



<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
        "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
        "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>
	<class name="com.bjsxt.hibernate.StuIdCard">
		<id name="id">
			<generator class="native"></generator>
		</id>
		
		<property name="num"/>
                  <!-- 外键在这边, 所以映射成many-to-one 用唯一键约束 -->
		<many-to-one name="student" column="studentId" unique="true"></many-to-one>
    </class>
	
</hibernate-mapping>


<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
        "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
        "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>
	<class name="com.bjsxt.hibernate.Student" dynamic-update="true">
		<id name="id">
			<generator class="native"></generator>
		</id>
		
		<property name="name"></property>
		<property name="age" />
		<property name="sex" />
		<property name="good" type="yes_no"></property>
		<one-to-one name="stuIdCard" property-ref="student"></one-to-one>
    </class>
	
</hibernate-mapping>
分享到:
评论

相关推荐

    Hibernate一对一唯一外键关联映射(双向关联)

    在Hibernate中,一对一关联可以通过配置XML映射文件或使用注解来实现。这里我们将使用注解方式进行说明。首先,我们需要在两个实体类中分别定义对应的属性,并使用`@OneToOne`注解来指定关联关系。 1. 实体类A: ``...

    hibernate一对一之唯一外键关联(双向关联)

    - 在一对一关联中,唯一外键关联是指在一个实体中定义了另一个实体的主键作为其字段,形成外键约束,确保了数据的一致性和完整性。 3. **双向关联与单向关联** - **单向关联**:只有一方知道另一方的存在,例如...

    Hibernate一对一唯一外键关联映射(单向关联)

    接下来,我们需要在Hibernate的XML映射文件中定义这两个实体的关联关系。在`Person.hbm.xml`文件中: ```xml &lt;!-- Person.hbm.xml --&gt; &lt;hibernate-mapping&gt; &lt;class name="com.example.Person" table="PERSON"&gt; ...

    Hibernate一对一双向外键关联(annotation/xml)

    在Java的持久化框架Hibernate中,一对一双向外键关联是一种常见的关系映射方式,用于表示两个实体类之间一对一的关联关系。在这个场景下,每个实体都有一个引用指向另一个实体,形成双向关联。本篇文章将深入探讨...

    Hibernate教程05_关系映射之一对一双向外键关联

    在Hibernate中,一对一关联的配置主要通过注解或XML配置文件完成。对于双向关联,我们需要在两个实体类中分别设置相应的属性和关联注解。 在实体类A中,我们将添加一个类型为B的属性,并使用`@OneToOne`注解来指定...

    hibernate one-to-one 一对一唯一外键关联映射_单向 and 双向

    Hibernate 一对一唯一外键关联映射详解 Hibernate是一种流行的Java持久层框架,提供了多种关联映射方式,其中一对一唯一外键关联映射是一种常见的关联方式。在本文中,我们将详细介绍Hibernate一对一唯一外键关联...

    hibernate一对一唯一外键关联映射(双向关联)

    本篇将深入探讨Hibernate中的一对一唯一外键关联映射,特别是双向关联的实现。 ### 1. 一对一关联概述 一对一关联意味着一个实体只能与另一个实体的单一实例相关联,这种关系通常出现在两个表之间,其中一个表的...

    hibernate一对一唯一外键关联映射(单项关联)

    首先,一对一关联分为两种类型:单向关联和双向关联。单向关联意味着在一个实体类中存在对另一实体的引用,而另一实体类中没有相应的引用。唯一外键关联则表示在两个表之间通过一个外键字段建立一对一关系,这个外键...

    hibernate一对一之唯一外键关联(单向关联)

    总的来说,Hibernate的一对一唯一外键关联(单向关联)是通过在一方实体中定义另一方实体的引用,并通过注解或XML映射文件进行配置来实现的。这种关联方式简化了对象关系的管理,但同时也需要开发者在操作关联对象时...

    Hibernate ORM - 一对一外键关联关系

    1. **一对一外键关联配置**:在Hibernate中,可以通过在映射文件中添加`&lt;one-to-one&gt;`标签或在实体类上使用`@OneToOne`注解来定义一对一关联。关联的外键通常位于被引用的实体(“一对一”关系的“一”端)中。 2. ...

    Hibernate 一对一关联映射(主键关联VS唯一外键关联)

    本篇文章将深入探讨两种实现一对一关联的方式:主键关联(Primary Key Join)和唯一外键关联(ForeignKey Join),并结合源码和实际工具进行详细讲解。 一、主键关联(Primary Key Join) 1. 主键关联的概念: ...

    Hibernate双向一对一关联映射(注解版)

    本主题聚焦于“Hibernate双向一对一关联映射”的注解实现,这是一种高级的数据库设计模式,用于处理两个实体之间一对一的关系。 在Hibernate中,一对一关联映射分为单向和双向。单向一对一映射通常涉及一个实体持有...

    Hibernate关联映射-one to one单向外键关联

    在Hibernate中,一对一关联可以通过配置XML映射文件或者使用注解来实现。我们先来看XML映射文件的例子。假设我们有两个实体,一个是`User`,另一个是`Account`,`User`实体拥有对`Account`的引用。在`User.hbm.xml`...

    Hibernate教程04_关系映射之一对一单向外键关联

    在保存或更新实体时,Hibernate会自动处理一对一关联的外键维护。 6. **懒加载与立即加载**:在一对一关系中,可以设置fetch属性来控制关联对象的加载策略,如懒加载(延迟加载)和立即加载。 7. **级联操作**:...

    Hibernate一对一单向外键关联(annotation/xml)

    在Hibernate中,一对一关联可以是单向或双向的。在这个场景中,我们讨论的是单向关联,即只有一个实体知道这个关联关系。 **注解方式实现一对一单向外键关联** 1. **定义实体类**:首先,我们需要创建两个实体类,...

    Hibernate一对一外键映射

    **标题:Hibernate一对一外键映射** 在关系型数据库中,一对一(One-to-One)关联是一种常见的关系,它表示两个实体之间存在着唯一的关系。Hibernate,作为Java领域中的一个流行的ORM(对象关系映射)框架,提供了...

    Hibernate 一对一外键单向关联

    本篇文章将深入探讨Hibernate中的一对一外键单向关联。 首先,一对一外键关联指的是一个实体通过外键直接引用另一个实体的主键。在单向关联中,只有其中一个实体知道另一个实体的存在,而另一个实体则无感知。这种...

    hibernate中的 一对一唯一外键双向关联

    在XML映射文件中,我们需要为每个实体定义`&lt;one-to-one&gt;`标签来表示一对一的关联。例如,如果我们有两个实体,`User`和`Profile`,`User`有一个`Profile`,`Profile`也属于一个特定的`User`,可以这样配置: ```xml...

Global site tag (gtag.js) - Google Analytics