如何使用删除级联?

时间:2018-06-08 08:02:44

标签: jhipster

我在博客应用http://gist.asciidoctor.org/?github-mraible/jhipster4-demo//README.adoc上使用了Matt Raible示例,当我尝试删除博客而不删除该博客的所有条目时,它给了我一个内部服务器错误(DataIntegrityViolationException)。

org.springframework.dao.DataIntegrityViolationException: could not execute statement; SQL [n/a]; constraint ["FK_ENTRY_BLOG_ID: PUBLIC.ENTRY FOREIGN KEY(BLOG_ID) REFERENCES PUBLIC.BLOG(ID) (2801)"; SQL statement:
delete from blog where id=? [23503-197]]; nested exception is org.hibernate.exception.ConstraintViolationException: could not execute statement
        at org.springframework.orm.jpa.vendor.HibernateJpaDialect.convertHibernateAccessException(HibernateJpaDialect.java:278)
        at org.springframework.orm.jpa.vendor.HibernateJpaDialect.translateExceptionIfPossible(HibernateJpaDialect.java:244)

我想知道在使用JDLStudio.jh定义文件的JDL-Import时是否有任何方法可以获得删除级联,如果不可能,是否有人知道如何最好地完成它。像往常一样,任何一个例子都会很棒!

1 个答案:

答案 0 :(得分:0)

这在JDL中无法声明。如果要级联删除,请将该属性添加到关系注释中。例如:

@OneToMany(mappedBy = "blog", cascade = CascadeType.REMOVE)
private Set<Article> articles = new HashSet<>();