【发布时间】:2020-04-16 13:35:35
【问题描述】:
我有两个实体:
User
Work
它们与 each-over 之间存在多对多的关系。
@ManyToMany(
fetch = FetchType.LAZY,
cascade = {CascadeType.PERSIST, CascadeType.MERGE, CascadeType.REFRESH})
@JoinTable(
name = "user_work",
joinColumns = @JoinColumn(name = "work_id"),
inverseJoinColumns = @JoinColumn(name = "user_id"))
private List<User> workUsers;
当我使用 JPA 添加新作品时:
List<UserDto> users = new ArrayList<>();
users.add(new User(something something));
WorkDto work1 = new WorkDto(1, users));
workRepository.save(workMapper.fromDto(work1));
问题:当我将我的工作实体保存在数据库中时,它不会保存用户,所以当我提取它时,工作说它没有用户。
如何将工作插入数据库并同时添加用户?我当然有 work_id 和 user_id 的互惠表
【问题讨论】:
-
你用过
@ManyToMany(mappedBy = "work")吗?
标签: java sql spring hibernate jpa