mappedBy的作用Cascade 级联操作

 在@OneToMany里加入mappedBy属性避免生成中间表

如果A B两个实体间是一对多,多对一的关系,如果不在@OneToMany里加入mappedBy属性会导致自动生成一个多余的中间表。比如:


@Entity

public  class A {

@OneToMany( mappedBy="a")
public  Set<B>
bs = new  HashSet<B>(0);
}


@Entity
public  class B {
@ManyToOne
public A a;

}

这样写会只成生成表A和表B,B中会有一个到表A的外键。但是如果不加mappedBy=”a”, 那么就会再生成一张A_B表。

 

 

Cascade 级联操作

  CascadeType. PERSIST 级联持久化 ( 保存 ) 操作

  CascadeType. MERGE 级联更新 ( 合并 ) 操作

  CascadeType. REFRESH 级联刷新操作,只会查询获取操作

  CascadeType. REMOVE 级联删除操作

  CascadeType. ALL 级联以上全部操作

  Fetch 抓取是否延迟加载,默认情况一的方为立即加载,多的一方为延迟加载

  mappedBy 关系维护

  mappedBy= "order" 表示在 OrderItem 类中的 order 属性来维护关系

 

阅读更多
文章标签: class merge
个人分类: hibernate
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭