当用户对象包含使用@ElementCollection存储的数据时,我无法解决如何使用JPA对Person对象进行批量删除.任何有关如何做到这一点的想法将不胜感激.
@Entity
@Table(name="at_person")
public class Person implements Comparable {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name="id")
private long id = 0;
@Column(name="name", nullable = true, length = 128)
private String name = "";
@ElementCollection
@Column(name = "email")
@CollectionTable(name = "person_email", joinColumns = @JoinColumn(name = "person_id"))
private Set email = new HashSet();
}
目前我正在做的是这样的,它失败了外键约束错误:
Query query=em.createQuery("DELETE FROM Person");
Caused by: java.sql.SQLException: integrity constraint violation:
foreign key no action; FKCEC6E942485388AB table: PERSON_EMAIL
如果它可以是纯JPA注释而不是Hibernate注释,这将是一个奖金!