crudrepository findBy sygnatura metody z wieloma operatorami?


85

Mam taką klasę jednostek:

@Entity
@Table(name = "EMAIL")
class Email{
    @Id
    @Column(name = "Id")
    Long id;
    @Column(name = "EMAIL_ID")
    String emailId;
    @Column(name = "PIN_CODE")
    String pincode;
}

Jak napisać findBymetodę dla poniższego zapytania za pomocą crudrepository spring data jpa?

select email_id,name from email_details where eamil_id in('mike@gmail.com','ram@gmail.com') and pin_code in('633677','733877')

Oczekuję metody jpa danych sprężyny, jak poniżej, ale jak ją skonstruować?

List<Email> findBy.....(List<String> emails, List<String> pinCodes);

Chcę uzyskać listę wiadomości e-mail w jednym trafieniu w bazę danych.

Odpowiedzi:


179

Poniższy podpis wystarczy:

List<Email> findByEmailIdInAndPincodeIn(List<String> emails, List<String> pinCodes);

Spring Data JPA obsługuje dużą liczbę słów kluczowych do tworzenia zapytania. INi ANDsą wśród nich .


2
9 miesięcy poszukiwań tylko po to, aby uzyskać tę prostą odpowiedź. Dziękuję!
Antonio112009
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.