Spring Data JPA: как создать метод «удалить по нескольким свойствам»?

#spring #spring-data #spring-data-jpa

#spring #spring-данные #spring-data-jpa

Вопрос:

Я хочу удалить объект (объекты) по нескольким свойствам объекта?

Я знаю, как это сделать, используя JPA query ( @Query аннотацию).

Возможно ли это сделать с помощью derived query ? Как назвать такой метод в JpaRepository ?

Ответ №1:

Это просто как метод выбора именования:

Два свойства:

 long deleteByIdAndUser(
    @Param("id") Long id, 
    @Param("user") User user);
  

Три свойства:

 long deleteByIdAndUserAndStatus(
    @Param("id") Long id, 
    @Param("user") User user, 
    @Param("status") String status);
  

и т.д.

Комментарии:

1. @Param(«статус») — является ли «статус» именем столбца или именем поля в моей сущности?

2. @Matley Это имя поля объекта.

3. @MichalFoksa что это возвращает «Длинный»? это идентификатор удаленного пользователя?

4. @wannix Это количество удаленных записей. Если вам не нужна эта информация, используйте void в качестве возвращаемого типа.

5. Хорошо, понял. Спасибо