`
hekeji
  • 浏览: 51367 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

Hibernate 关联存储机制

阅读更多
Hibernate Many to one:
how was the object stored?
======================================================================
[b]Userb]
<hibernate-mapping 
	package="com.smith.hibernate.bean">

	<class name="User" table="glass_user" lazy="true">
		
		<id name="id" type="int" column="id">
			<generator class="native"/>
		</id>
		<property name="name" 
		          column="name"
		          type="java.lang.String"
		          length="50"
		          />
		
		<property name="password" 
		        type="java.lang.String"
				not-null="true"
				length="20"
				column="password"/>
				
		<property name="des"
		          type="java.lang.String"
		          length="100"
		          column="des"/>
		 <property name="newDate"/>
		 
		<many-to-one name="group"
		             column="groupId"
		             class="Group"
		             cascade="save-update"
		             lazy="false"
		             >
		</many-to-one>
		
	</class>

======================================================================Group
<hibernate-mapping package="com.smith.hibernate.bean">

<class name="Group" table="glass_group" lazy="true">

<id name="id" column="id">
<generator class="assigned" />
</id>
<property name="des" type="java.lang.String" length="100"
column="des" />

<property name="name" column="name" type="java.lang.String"
length="50" />

</class>

</hibernate-mapping>
======================================================================SQL
Hibernate: 
    select
        group_.id,
        group_.des as des1_,
        group_.name as name1_ 
    from
        glass_group group_ 
    where
        group_.id=?
Hibernate: 
    insert 
    into
        glass_user
        (id, name, password, des, newDate, groupId) 
    values
        (null, ?, ?, ?, ?, ?)
Hibernate: 
    insert 
    into
        glass_group
        (des, name, id) 
    values


======================================================================
由此可见Hibernat emany to one存储方式 :
  • 1.先存主对象User
  • 2.再存关联对象Group
  • 3.更新主对象的groupId (关联的外键值)

分享到:
评论

相关推荐

    hibernate关联映射实例

    本文将深入探讨“hibernate关联映射实例”中的关键知识点,包括一对多、多对多和继承映射,这些都是Hibernate中至关重要的概念。 1. **一对多关联映射**: 在现实世界中,一个实体可能会与多个其他实体相关联,...

    Hibernate 关联关系映射分类

    在深入探讨Hibernate关联关系映射分类之前,我们首先简要回顾一下Hibernate框架的基本概念。Hibernate是一种持久层框架,主要用于Java应用程序中的对象关系映射(ORM),它能够将面向对象的数据模型转换为数据库中的...

    hibernate关联关系映射

    "hibernate关联关系映射"是Hibernate的核心概念之一,它定义了如何在Java对象和数据库表之间建立关系。以下是对这个主题的详细讲解: 一、一对一关系映射(One-to-One) 一对一关系是指一个实体对应另一个实体的...

    Hibernate关联关系疑问

    这篇博客"Hibernate关联关系疑问"可能探讨了在使用Hibernate处理对象关系映射(ORM)时遇到的一些关联问题。在ORM中,关联关系是数据库表之间的连接,如一对一、一对多、多对一和多对多关系。 1. **一对一关联...

    HIbernate关联关系总结

    在Java的ORM(对象关系映射)框架Hibernate中,关联关系是将数据库中的表与Java对象之间建立联系的重要机制。本篇文章将详细讲解Hibernate的两种单向关联关系:单向1-N关联和单向N-1关联。 1. **单向1-N关联** 在...

    Hibernate 关联映射

    这可能是测试Hibernate关联映射的一个示例项目或者类。通常,这样的测试会包含各种关联映射的实例,如实体类的定义,配置文件或注解,以及测试用例,用于验证关联映射是否按预期工作。 **详细知识讲解:** 1. **一...

    hibernate实体关联关系映射

    通过本文的学习,开发者可以更好地理解和掌握Hibernate框架下的实体关联关系映射机制,从而提高开发效率并确保代码质量。 #### 二、实体关联关系映射概述 实体关联关系映射是指在Hibernate框架下如何将Java对象...

    Hibernate的缓存机制

    - 缓存中的数据以相互关联的持久化对象形式存储,这意味着对象及其引用的对象都会被存储在缓存中。 - 由于每个事务都有自己的独立缓存,因此一级缓存不存在并发访问问题。这使得一级缓存对读取操作非常高效,减少...

    hibernate的表关联操作-hibernate02

    本篇主要围绕"hibernate的表关联操作"展开,通过映射关系来实现对实体类的增删改查,帮助我们深入理解Hibernate的核心机制。 首先,我们要明白什么是表关联。在数据库设计中,关联是表与表之间的连接,通常由外键...

    Hibernate映射一对多关联关系

    ### Hibernate映射一对多关联关系 #### 知识点概览 - **概念解析**:一对多(One-to-Many)关联关系的概念及其在Hibernate中的实现方式。 - **域模型设计**:创建具有一个实体与多个实体关联的域模型。 - **关系...

    hibernate一对多,多对一,一对多双向关联

    由于只给出了"hibernate_003"这个文件名,我们无法直接获取具体信息,但可以猜测这是一个系列教程的一部分,"003"可能是表示序列号,表示这是关于Hibernate关联关系的第三个主题或者第三部分。 **详细知识点:** 1...

    传智播客hibernate教程_保存多对一关联关系的更进一步分析

    2. **延迟加载**:默认情况下,Hibernate使用延迟加载机制,即在首次访问关联属性时才从数据库加载。这可以通过`fetch = FetchType.LAZY`来配置。然而,如果需要在加载实体时立即加载关联实体,可以设置为`FetchType...

    Hibernate_关联关系映射配置

    Hibernate提供了延迟加载机制,可以按需加载关联对象,以提高性能。默认情况下,`@ManyToOne`和`@OneToOne`关系使用延迟加载,而`@OneToMany`和`@ManyToMany`则使用立即加载。通过调整`fetch`策略,我们可以改变这种...

    hibernate外键实现一对一双向关联关系源码

    在Java的持久化框架Hibernate中,外键是用于在数据库中建立对象之间的关联关系的关键机制。本主题将深入探讨如何使用Hibernate实现一对一双向关联关系,并通过源码解析这一过程。 一对一双向关联关系指的是两个实体...

    hibernate调用存储过程.docx

    在文档中提到的“命名SQL查询”是Hibernate提供的一种高级查询机制,它允许在映射文件中预先定义SQL查询,然后像调用HQL(Hibernate Query Language)一样调用这些查询。这样做的好处是可以提高代码的可读性和可维护...

    hibernate 单向多对多关联映射练习

    2. **关联表的生成**:在多对多关联中,通常需要一个中间表来存储双方的关联信息。由于是单向关联,这个表由Hibernate自动创建,无需在实体类中显式声明。中间表通常包含两列,分别对应两个实体的主键。 3. **关联...

    Hibernate表间关联ppt课件.ppt

    【Hibernate表间关联】 在Java开发中,Hibernate作为一款强大的对象关系映射(ORM)框架,使得开发者可以方便地在Java对象和数据库表之间建立关联。本课件主要讲解了Hibernate中不同类型的表间关联,包括一对一、一...

Global site tag (gtag.js) - Google Analytics