Есть ли способ удалить все предыдущие связанные записи дочерних таблиц и добавить новые данные во время операции saveOrUpdate в Hibernate? - PullRequest
0 голосов
/ 26 сентября 2019

Предположим, у меня есть таблица с именем product , с которой связана @ OneToMany таблица с именем product_images .Каждый раз я хочу очистить все связанные предыдущие изображения и вставить новое.Я знаю запись процесса, очищаю предыдущий связанный набор и добавляю новые.Есть ли какой-либо подход без предварительной выборки записи?

Справочные объекты

@Entity
public class Product {
    @Id
    @Column(name = "id")
    private Integer id;

    @OneToMany(cascade = CascadeType.ALL, orphanRemoval = true)
    @JoinColumn(name = "product_id", insertable = false, updatable = false, referencedColumnName = "id")
    private Set<ProductImage> images = new LinkedHashSet<>();
}

@Entity
@IdClass(ProductImageKey.class)
public class ProductImage {
    @Id
    @Column(name = "id")
    private Integer id;

    @Id
    @Column(name = "product_id")
    private Integer productId;

    @Column(name = "image_url")
    private String imageUrl;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...