我正在尝试从我的Neo4j数据库中删除所有Type
。我有一个Type
类typeRepository
的存储库,我称之为typeRepository.deleteAll();
。但是,并非所有内容都被删除。仅删除其节点,使BusinessLogic
节点在数据库中保持活动状态。我不知道还有什么可以尝试,因为它的方法名称暗示它将删除所有东西,包括它自己和与自身相关的东西。以下是我的持久化类的外观,它扩展了我的数据库包含的基类型对象:
@NodeEntity
public class BaseType {
@GraphId
private Long id;
@Indexed(unique=true) String uid;
private String name;
BaseType() {}
BaseType(String name) {
this.name = name;
}
}
,
public class Type extends BaseType {
@RelatedTo(type="businessLogic")
@Fetch
private BusinessLogic businessLogic;
public Type() {super();}
public Type(String name, BusinessLogic businessLogic) {
super(name);
this.businessLogic = businessLogic;
}
}
,
@NodeEntity
@XmlAccessorType(XmlAccessType.NONE)
public class BusinessLogic implements Serializable {
@GraphId
private Long id;
private static final long serialVersionUID = -634875134095817304L;
@XmlElement
private String create;
public void setCreate(String create) {
this.create = create;
}
public String getCreate() {
return create;
}
}
我只存储Type
个实例,我通过调用
typeRepository.save(new Type(name, businessLogic));
。
答案 0 :(得分:0)
我不认为SDN会自行进行级联删除。那么,为什么不首先通过各自的存储库删除BusinessLogic对象,然后是Type对象?