Spring-Data JPA: сохранить новую сущность, ссылающуюся на существующую

Вопрос в основном такой же, как ниже:

JPA-каскад сохраняется и ссылки на отдельные объекты выдают исключение PersistentObjectException. Почему?

Я создаю новую сущность, которая ссылается на существующую, отдельную. Теперь, когда я сохраняю эту сущность в моем хранилище данных Spring, генерируется исключение:

org.springframework.dao.InvalidDataAccessApiUsageException: detached entity passed to persist

если мы посмотрим на метод save () в исходном коде пружинных данных JPA, то увидим:

public <S extends T> S save(S entity) {

    if (entityInformation.isNew(entity)) {
        em.persist(entity);
        return entity;
    } else {
        return em.merge(entity);
    }
}

и если мы посмотрим на isNew () вAbstractEntityInformation

public boolean isNew(T entity) {

    return getId(entity) == null;
}

Так что в основном, если я сохраню () новую сущность(id == null), весенние данные всегда будут называться постоянными и, следовательно, этот сценарий всегда будет неудачным.

Это кажется очень типичным случаем использования при добавлении новых элементов в коллекции.

Как я могу решить это?

РЕДАКТИРОВАТЬ 1:

НОТА:

Эта проблема НЕ имеет прямого отношения кКак сохранить новую сущность, которая ссылается на существующую сущность в Spring JPA?, Предположим, вы получите запрос на создание новой сущности через http. Затем вы извлекаете информацию из запроса и создаете свою сущность и существующую ссылку. Следовательно они всегда будут отделены.

Ответы на вопрос(3)

Ваш ответ на вопрос