Я пытаюсь обновить только три столбца таблицы с 36 столбцами, используя spring data jpa
.Я спорю о следующих двух подходах и провел довольно исследование, но не смог прийти к выводу, какой из них предпочтителен. Однако я склоняюсь ко второму подходу таким образом, что мне не нужно создавать класс сущностей с @Column
аннотацией и getters/setters
.
Первый подход
с использованием spring data jpa
Сначала я получу объект сущности с помощью id, обновлю поле и сохраню его.
MyObject object= myRepository.getOne(id);
object.setName("updated Name);
myRepository.save(object);
Второй подход
@Repository
public interface MyRepository extends JpaRepository<MyObject , Long> {
@Query("update MyTable c set c.name= :name WHERE c.id = :id")
void updateName(@Param("id") Long id, @Param("name") String name);
}
Какой из них является предпочтительным способом решения проблемы, как в моем случае.