hibernate中双向关联在级联情况下save对象讨论

hibernate中双向关联在级联情况下save对象讨论

ID:42625095

大小:314.83 KB

页数:15页

时间:2019-09-19

hibernate中双向关联在级联情况下save对象讨论_第1页
hibernate中双向关联在级联情况下save对象讨论_第2页
hibernate中双向关联在级联情况下save对象讨论_第3页
hibernate中双向关联在级联情况下save对象讨论_第4页
hibernate中双向关联在级联情况下save对象讨论_第5页
资源描述:

《hibernate中双向关联在级联情况下save对象讨论》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、hibernate中双向关联在级联情况下save对象讨论一般在双向关联的情况下,都要在一方设置mappedBy(name="xxx"),由对方主导映射关系。在多对一的情况下,一般在多的一方设置主导映射的关系(为了方便叙述,就这么叫它了,呵呵)。所谓主导这种映射关系,如group,user,就是由多的一方(user)里面产生一个外键参考一的一方(group)的主键,这时候user就是主导的一方,写mappedBy是被主导的一方。在多对多的情况下,随便由那方主导,在数据库表的结构上都是一样的,都会产生一个中间表,中间

2、表有两个字段的联合主键,分别作为外键参考两个多的一方。在一对多和多对多的双向关联的情况下,并且在cascade=CascadeType.ALL情况下,save不同方面(如主导关系一方或被主导的一方)在级联的具体表现上是不同的。分别来讨论一下。先看一对多的双向关联关系,这里就拿group和user举例。Group类如下:[java] viewplain copy1.package com.chen.hibernate.ormapping;  2.  3.import java.util.HashSet;  4.im

3、port java.util.Set;  5.  6.import javax.persistence.CascadeType;  7.import javax.persistence.Entity;  8.import javax.persistence.FetchType;  9.import javax.persistence.GeneratedValue;  10.import javax.persistence.Id;  11.import javax.persistence.OneToMany;  1

4、2.import javax.persistence.Table;  13.  14.@Entity  15.@Table(name = "t_group")  16.public class Group {  17.    private int id;  18.    private String name;  19.    private Set users = new HashSet();  20.  21.    @Id  22.    @GeneratedValue  23. 

5、   public int getId() {  24.        return id;  25.    }  26.  27.    public void setId(int id) {  28.        this.id = id;  29.    }  30.  1.    public String getName() {  2.        return name;  3.    }  4.  5.    public void setName(String name) {  6.     

6、   this.name = name;  7.    }  8.  9.    // 设置mappedBy是被主导的一方   10.    @OneToMany(mappedBy = "group", cascade = { CascadeType.ALL }, fetch = FetchType.LAZY)  11.    public Set getUsers() {  12.        return users;  13.    }  14.  15.    public void set

7、Users(Set users) {  16.        this.users = users;  17.    }  18.}  User类如下:[java] viewplain copy1.package com.chen.hibernate.ormapping;  2.  3.import javax.persistence.CascadeType;  4.import javax.persistence.Entity;  5.import javax.persistence.FetchTy

8、pe;  6.import javax.persistence.GeneratedValue;  7.import javax.persistence.Id;  8.import javax.persistence.JoinColumn;  9.import javax.persistence.ManyToOne;  10.import javax.persistence

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。