如何在使用@JoinTable时删除所有表中的记录(使用Hibernate)

MDP*_*MDP 5 java mapping orm hibernate jpa

我有一堂课叫News. 任何新闻都可以有很多Photo。这些是我的桌子

   news                   news_photo             photo
--------------      ----------------------     ------------
| id | title |      | id_news | id_photo |     | id | url |
--------------      ----------------------     ------------
  |                      |         |              |
  |----------------------|         |--------------|
Run Code Online (Sandbox Code Playgroud)

这是我的班级News

@Entity    
@Table(name = "news")
public class News extends ElementoPersistente implements Serializable{  
    ...
    @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER, orphanRemoval = true)
    @JoinTable(name = "news_photo",
               joinColumns = { @JoinColumn(name = "id_news")},
               inverseJoinColumns = { @JoinColumn(name = "id_photo") }) 
    private List<photo> photos;
    ...
}
Run Code Online (Sandbox Code Playgroud)

当我从中删除一个对象List<photo> photos然后保存该对象时News,相关记录将从表中删除news_photo,但表内不会删除任何内容photo。如何删除news_photo和中的两条记录photo?

谢谢