如下所述:
从@ManyToMany
映射中删除条目时,需要手动调整元素以删除外键。
我多年来一直在使用我自己的 JPA CRUD 并且有一个很好的解决方案:CrudDao例如NoteDao。
但是最近Spring JPA以及通过声明一个接口然后namedQuery
在@Entity
.
但是如何解决@ManyToMany
删除问题?我基本上会remove
在我的 Crud上有一些方法来公开 JPA 的这个“特性”。
我有2个实体:User和UsersList.
@Entity
@Table(name = "USERS")
public class User {
@Id
@GeneratedValue
@Column(name = "ID")
private Long id;
@ManyToMany(cascade = CascadeType.REMOVE, mappedBy = "users")
private List<UsersList> usersLists = new ArrayList<UsersList>();
public List<UsersList> getUsersLists() {
return usersLists;
}
public void setUsersLists(List<UsersList> usersLists) {
this.usersLists = usersLists;
}
}
Run Code Online (Sandbox Code Playgroud)
和
@Entity
@Table(name = "USERS_LIST")
public class UsersList {
@Id
@GeneratedValue
@Column(name = "ID")
private Long id;
@ManyToMany
private List<User> users = new ArrayList<User>();
public List<User> getUsers() {
return users;
}
public void setUsers(List<User> …
Run Code Online (Sandbox Code Playgroud)