jpa删除manytomany链接

时间:2010-07-28 08:52:54

标签: jpa many-to-many

我有一个事件表,我想制作一组事件。这很容易

    // this cascade group still removes the join table but not the products table
@ManyToMany(targetEntity=Product.class,fetch = FetchType.EAGER, cascade = 
   {CascadeType.PERSIST, CascadeType.REFRESH,CascadeType.MERGE})
@JoinTable(name = "lcw_group_product", 
    joinColumns = { @JoinColumn(name = "group_id", referencedColumnName="id") }, 
    inverseJoinColumns = { @JoinColumn(name = "product_id", referencedColumnName="id") })
@ElementForeignKey(updateAction = ForeignKeyAction.CASCADE)
    public Set getProducts() {
        return products;
    }

当我想要完全删除组时,这些注释有效但当我想更新组以删除一些链接时,将事件保留在那里,我找不到办法做到这一点,我目前正在做删除链接表的语句,但这不会反映在父实体

1 个答案:

答案 0 :(得分:1)

只是为了澄清ElementForeignKey是一个OpenJPA注释,而不是JPA注释。 不幸的是,到目前为止,ManyToMany注释没有orphanRemoval属性。