微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么我的JpaRepository saveall替换联接表中的现有记录

如何解决为什么我的JpaRepository saveall替换联接表中的现有记录

我有以下实体

@Entity
public class Configuration {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long configuration_id;
    private String configuration_name;
    private Long config_type_id;
    private String configuration_params;

    @ManyToMany(mappedBy = "configurations",cascade = {CascadeType.ALL})
    @JsonIgnore
    private List<Profile> profiles;

@Entity
public class Profile {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long profile_id;
    private String profile_name;

    @ManyToMany(cascade = {CascadeType.ALL})
    @JoinTable(name = "profile_config_map",joinColumns = @JoinColumn(name = "profile_id"),inverseJoinColumns = @JoinColumn(name = "configuration_id")
    )
    
    private List<Configuration> configurations;

当我尝试在配置文件下插入配置时,它会删除链接到该配置文件的现有配置。有什么办法可以在该配置文件中保留现有配置,有任何注释吗?

 @PostMapping("/create")
    public List<Profile> addProfiles(@RequestBody List<Profile> profiles){
        repository.saveAll(profiles);
        repository.flush();
        return profiles;
    }

有人可以帮我吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。