Crudrepository findBy подпись метода с несколькими операторами?
У меня есть класс Entity:
@Entity
@Table(name = "EMAIL")
class Email{
@Id
@Column(name = "Id")
Long id;
@Column(name = "EMAIL_ID")
String emailId;
@Column(name = "PIN_CODE")
String pincode;
}
Как написать метод findBy
для нижеследующего запроса, используя crudrepository spring data jpa?
select email_id,name from email_details where eamil_id in('[email protected]','[email protected]') and pin_code in('633677','733877')
Я ожидаю, что метод jpa spring как и ниже, но как его построить?
List<Email> findBy.....(List<String> emails, List<String> pinCodes);
Я хочу получить список писем в одном удалении базы данных.
Ответы
Ответ 1
Следующая подпись будет делать:
List<Email> findByEmailIdInAndPincodeIn(List<String> emails, List<String> pinCodes);
Spring Данные JPA поддерживает большое количество ключевых слов для построения запроса. IN
и AND
относятся к ним.
Ответ 2
Попробуй это:
@Query("select c from Course c where c.course_id=?1 AND c.module_id IN (?2)");
List<Course> findByCourseIdAndModuleIdIn(Long courseId, List<Long> moduleIds);
Или это:
List<Course> findByCourseIdAndModuleIdIn(Long courseId, List<Long> moduleIds);
Spring Data JPA поддерживает большое количество ключевых слов для построения запроса. IN и AND среди них.