Os与OsFeature为一对多关系(OneToMany)
Os:
private Long osId;
.
.
.
private Set<OsFeature> osFeatures = new HashSet<OsFeature>();
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name="OsId", unique = true, nullable = false, insertable = true, updatable = true)
public Long getOsId()
{
return osId;
}
...
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "os")
public Set<OsFeature> getOsFeatures()
{
return osFeatures;
}
...
OsFeature:
private Os os;
.
.
.
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "OsId", referencedColumnName = "OsId", unique = false, nullable = false, insertable = true, updatable = true)
public Os getOs()
{
return os;
}
...
注意:OsFeature里面的referencedColumnName,它表示多对一中一方的主键
如果不加该属性,在程序中,如果是保存一方Os的话,保存成功,但是在Os对应的表中会保存多次,即:os中关联多少个osFeature,os就会保存多少次,加上referencedColumnName属性后,一切正常
分享到:
相关推荐
关于Hibernate级联删除的问题.doc
3.3、Hibernate级联关系(Av839011656,P3).mp4
inverse Hibernate_级联关系说明_-_关于cascade和inverse的用法
Hibernate级联操作一对多demo Hibernate级联操作一对多demo Hibernate级联操作一对多demo
Hibernate的级联操作(增,删,该)
包括t_card主表和t_person从表,实现基于session和hql的hibernate级联增删改查;
Hibernate级联操作.docx
hibernate 级联(cascade和inverse)一对多,Jar包,数据库建表语句都好了,只要修改一下,数据库配置文件,就可以使用了,使用junit进行测试。
NULL 博文链接:https://hw1287789687.iteye.com/blog/2247386
hibernate3.2级联关系自身一对多双向关联,适合初学者熟悉hibernate框架。
JavaProject实现hibernate3.2的级联关系,适合初学者熟悉各种级联关系。一对多,一朵一,多对多。
虽然Hibernate不怎么流行了不过有兴趣的可以看看
hibernate many-to-many级联保存,级联更新,级联删除
第七章_Hibernate_-_级联策略 第七章
Hibernate 一对多、多对一、级联、加载、反转
详细讲解了实体之间的级联关系,内有代码及相关原理讲解
用hibernate做的省市县三级级联,很具体,包你一看就会,其中包含ajax局部刷新;省市县所有数据台湾省的数据不全面,其他都配好了,只需要你整合一下即可运行。
Ajax+struts+hibernate实现级联菜单 Ajax+struts+hibernate实现级联菜单 Ajax+struts+hibernate实现级联菜单
hibernate实现继承关系映射的方式有三种,这种方式是将每个类都映射成一张表。