Play 2.1 :使用Ebean做ORM,对@ManyToOne 有点不解 - 服务报错-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

Play 2.1 :使用Ebean做ORM,对@ManyToOne 有点不解 - 服务报错

2020-06-02 23:08:48 196 1

用Play做一个小app的时候,我用的ORM是Ebean,但是在使用@ManyToOne的时候出现一个问题,我希望的是当one方被删除的时候,其下的many方也都被删除,但是 @ManyToOne在删除的时候只删除了one方,many方没起作用,然后就算我手动添加代码进行删除也无效,设置为 @ManyToOne(cascade = CascadeType.ALL),  CascadeType.REMOVE都没用,是因为我用错@ManyToOne了还是什么问题呢,求指教

取消 提交回答
全部回答(1)
  • montos
    2020-06-02 23:08:55

    这个可以的。

    class A extends Model {
     @ManyToOne
    public B b;

    }

    class B extends Model {
    @OneToMany(cascade = CascadeType.ALL)
    public List<A> as;

    }


    ######soga,但是我在一篇博文看到: cascade注解属性一般用在关系的维护端 在我的代码里,是A作为维护端的,那么cascade属性不是不能加在B端了吗######

    你不是就想在B端维护么?那就用在B端阿。你看的是这个?http://my.oschina.net/joymufeng/blog/93037

    跟我的答案没有任何冲突阿。看你自己的需求了

    ######你要确定哪一端的是维护关系的。
    0 0
+关注
5
文章
5115
问答
问答排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载