Hibernate实现单向一对多映射
数据库表中表现为“多”那方有“一”的外键,类中表现为“一”那方有“多”那方的集合。
“一”那方的xml
配置文件的格式如下:
﹤hibernate-mappingpackage="
此处填写包文件
"
﹥
﹤classname="
一对多中一的实体类的类名
"table="
所对应的数据库的表名
"
﹥
﹤idname="
所对应的实体类的属性
(id)"
column="所对应的数据表的字段
(**_id)"
unsaved-value="null"﹥
﹤generatorclass="native"/
﹥
﹤/id
﹥
﹤propertyname="
对应数据表中其他的字段
"
﹥﹤
/property
﹥
﹤setname="
对应实体类中的那个集合的属性
"
inverse="true"
lazy="true"
cascade="save-update"﹥
﹤keycolumn="
对应其外键的字段
"/
﹥
﹤one-to-manyclass="
对应一对多中多的实体类的类名
"/
﹥
﹤/set
﹥
﹤/class
﹥
﹤/hibernate-mapping
﹥
一个user
可以有多个亲人,以下为
user
的类,
public
class
User{
private
int
userID;
private
Stringusername;
private
Stringpassword;
private
Set<Relationship>
relationships
=
n
ew
HashSet<Relationship>();
/*属性的
get
,
set
方法
*/
}
配置文件User.hbm.xml
如下:
<hibernate-mapping
package=
"com.gis.Entity"
>
<class
name=
"com.gis.Entity.User"
table
=
"user">
<
id
name
=
"userID"
column
="userID"
type=
"java.lang.String"
>
<
generator
class
=
"native"></
generator
>
</
id
>
<
property
name
=
"username"
type
="java.lang.String"
>
<
column
name
=
"username"
/>
</
property
>
<
property
name
=
"password"
type
="java.lang.String"
>
<
column
name
=
"password"
/>
</
property
>
<
set
name
=
"
relationships
"
cascade
="save-update"
>
<!--外键字段
-->
<
key
column
=
"userID"/>
<
one-to-many
class
=
"com.gis.Entity.Relationship"/>
</
set
>
</
class
>
</hibernate-mapping
>
亲人relationship
的类:
public
class
Relationship{
private
int
r_id;
private
Stringr_name;
private
int
userID;
private
Stringphone;
/*属性的
get
,
set
方法
*/
}
分享到:
相关推荐
Hibernate 一对一唯一外键关联映射详解 Hibernate是一种流行的Java持久层框架,提供了多种关联映射方式,其中一对一唯一外键关联映射是一种常见的关联方式。在本文中,我们将详细介绍Hibernate一对一唯一外键关联...
此外,`hibernate-mapping-3.0.dtd`还支持更复杂的映射,如一对一、一对多、多对多的关系映射,以及自定义类型、延迟加载等特性。 在实际应用中,`hibernate.properties`文件是Hibernate 5.0.7版本的配置文件,主要...
"hibernatetools-Update-4.1.1.Final_2013-12-08_01-06-33-B605.zip" 是一个针对Eclipse的Hibernate工具集更新包,包含了对4.1.1.Final版本的增强和优化,为开发者提供了更加便捷的Hibernate操作界面和功能。...
在"hibernate-father-son"这个例子中,可能包含两个实体类,如"Father"和"Son","Father"与多个"Son"之间存在一对多关系。在实际开发中,这种关系映射可以方便地处理父子级联操作,如级联保存、更新和删除。 四、...
本主题聚焦于"hibernate单向多对多映射",特别是在XML配置文件中的实现。在这个过程中,我们将探讨多对多关系的原理,以及如何在Hibernate中通过XML配置文件来定义这种关系。 首先,我们需要理解多对多关系的概念。...
通过创建一个新的Hibernate项目,实践从数据库逆向生成实体类,然后利用可视化设计工具调整映射关系,再生成对应的DAO和Service代码,最后进行HQL查询测试,全程体验Hibernate Tools带来的便利。 总结,Hibernate ...
以上就是关于Hibernate中一对一单向外键关联的基本介绍。通过理解和熟练掌握这种关联方式,开发者可以更高效地设计和管理数据库模型,提升应用性能。在实际项目中,还需结合业务场景灵活运用,并注意性能优化。通过...
本练习主要关注的是Hibernate中的单向多对多关联映射,这是一种常见的关系数据库设计模式,用于表示两个实体间复杂的关系。 在多对多关联中,两个实体类可以相互拥有多个实例,但只在一个方向上建立关联。例如,...
- `@OneToMany`、`@ManyToOne`、`@OneToOne`、`@ManyToMany`:表示不同类型的关联关系,例如一对多、多对一、一对一和多对多。 3. **配置自动建表**: - 在Hibernate的配置文件(hibernate.cfg.xml)中,可以通过...
总结,`hibernate-commons-annotations-5.0.1.Final.jar`是Hibernate框架的重要组成部分,通过提供丰富的元数据注解,简化了Java对象与数据库之间的映射工作。对它的源码进行深入学习,不仅能够增强对JPA和Hibernate...
7. **关联映射**:包括一对一(@OneToOne)、一对多(@OneToMany)、多对一(@ManyToOne)、多对多(@ManyToMany)关系的映射,方便处理对象间的关联关系。 8. **延迟加载**:Hibernate的懒加载策略可以在需要时才...
本篇主要探讨的是如何在Hibernate中实现一对多的单向关联映射。 一、概念理解 一对多关联意味着一个实体(如部门)可以有多个关联实体(如员工),而反过来,每个员工只属于一个部门。单向关联则表示只有部门知道其...
在Java的持久化框架Hibernate中,单向多对多映射是一种常见的关系映射方式,尤其在处理数据库中两个实体间复杂关联时显得尤为重要。在注解版的Hibernate中,我们不再需要传统的XML配置文件,而是直接在实体类上使用...
hibernate-jpa-2.0-api-1.0.1.Final-sources.jar hibernate jpa 源代码
2. **关联映射**:Hibernate支持多种关系映射,包括一对一(One-to-One)、一对多(One-to-Many)、多对一(Many-to-One)和多对多(Many-to-Many)。这部分可能详细解释了这些关系的配置,以及在Java对象和数据库表...
Hibernate稳定版(hibernate-release-5.3.23.Final.zip),Hibernate ORM 是一个为应用程序、库和框架提供对象/关系映射 (ORM) 支持的库。它还提供了 JPA 规范的实现,这是 ORM 的标准 Java 规范。
本项目“Hibernate学习:单向多对一关联 工程”专注于讲解Hibernate中的单向多对一关联映射,这是数据库设计中常见的关系类型,尤其在处理具有层次结构的数据时。 单向多对一关联指的是在一个实体类中有一个引用,...
hibernate-jpa-2.0-api-1.0.1.Final.jar
在Java的持久化框架Hibernate中,一对一(One-to-One)映射是一种常见的关系映射方式,它用于表示两个实体之间一对一的关联关系。在这种关系中,一个实体对应另一个实体的唯一实例。本实例将深入探讨如何在Hibernate...
在Java的持久化框架Hibernate中,单向一对多关联映射是常见的数据关系处理方式,尤其是在处理数据库中的实体类和表之间的关系时。本主题主要关注如何使用注解来实现这种映射。Hibernate通过注解使得对象关系映射...