Сохранить объект гибернации без извлечения сущностей внешнего ключа, сохранить только по идентификатору - PullRequest
1 голос
/ 10 июля 2020

Я сохраняю объект «Продукт» с Hibernate в базу данных. У объекта Product есть зависимые объекты, а не как идентификатор. В базе данных он сохраняется как внешние ключи. Приведенный ниже код является частью получения зависимых объектов для сохраняемого объекта Product. Поэтому каждый раз, когда мы сохраняем продукт, мы делаем ненужные обращения к базе данных, потому что мы уже знаем идентификаторы зависимых объектов. Как мне сделать это лучше?

        Rubric rubric = rubricRepository.findById(productRequestDto.getRubricId())
            .orElseThrow(() -> new EntityNotFoundException(productRequestDto.getRubricId().toString()));
    User user = userRepository.findById(productRequestDto.getUserId())
            .orElseThrow(() -> new EntityNotFoundException(productRequestDto.getUserId().toString()));
    Condition condition = conditionRepository.findById(productRequestDto.getConditionId())
            .orElseThrow(() -> new EntityNotFoundException(productRequestDto.getConditionId().toString()));
    Color color = colorRepository.findById(productRequestDto.getColorId())
            .orElseThrow(() -> new EntityNotFoundException(productRequestDto.getColorId().toString()));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...