Spring JPA: избегайте выбора перед обновлением - PullRequest
1 голос
/ 29 мая 2020

в настоящее время мы работаем над оптимизацией запросов JPA.

В одном из случаев мы знаем, что операция обновления должна быть выполнена, и вызываем метод save (entity) JPA.

Однако всякий раз, когда мы вызываем этот API, оператор select выполняется перед запросом на обновление.

не могли бы вы подсказать, как избежать выполнения такого оператора select?

1 Ответ

1 голос
/ 30 мая 2020

Мы можем использовать JPQL (или собственный SQL) с @Query.

@Repository
public interface MyEntityRepository extends JpaRepository<MyEntity, Long> {

    @Query("update MyEntity as e set e.message = :message where e.id = :id")
    @Modifying
    @Transactional
    void updateWithoutSelect(long id, String message);
}
...