Q: Ebean @ManyToMany(cascade=REMOVE) described #429

This commit is contained in:
Robin Bygrave
2015-10-06 14:38:05 +13:00
parent bbbb6482fb
commit dc968f16bf
4 changed files with 163 additions and 0 deletions
@@ -0,0 +1,34 @@
package com.avaje.tests.model.m2m;
import com.avaje.tests.model.BaseModel;
import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.OneToMany;
import java.util.List;
@Entity
public class MnyA extends BaseModel {
String name;
@OneToMany(mappedBy = "a", cascade = CascadeType.REMOVE)
List<MnyB> bs;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public List<MnyB> getBs() {
return bs;
}
public void setBs(List<MnyB> bs) {
this.bs = bs;
}
}
@@ -0,0 +1,45 @@
package com.avaje.tests.model.m2m;
import com.avaje.tests.model.BaseModel;
import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.ManyToMany;
import javax.persistence.ManyToOne;
import java.util.List;
@Entity
public class MnyB extends BaseModel {
String name;
@ManyToOne
MnyA a;
@ManyToMany(cascade = CascadeType.REMOVE)
List<MnyC> cs;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public MnyA getA() {
return a;
}
public void setA(MnyA a) {
this.a = a;
}
public List<MnyC> getCs() {
return cs;
}
public void setCs(List<MnyC> cs) {
this.cs = cs;
}
}
@@ -0,0 +1,32 @@
package com.avaje.tests.model.m2m;
import com.avaje.tests.model.BaseModel;
import javax.persistence.Entity;
import javax.persistence.ManyToMany;
import java.util.List;
@Entity
public class MnyC extends BaseModel {
String name;
@ManyToMany(mappedBy = "cs")
List<MnyB> bs;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public List<MnyB> getBs() {
return bs;
}
public void setBs(List<MnyB> bs) {
this.bs = bs;
}
}