Массовые данные для поиска существуют или нет: Spring Data JPA - PullRequest
0 голосов
/ 21 сентября 2018

Я получаю Post запрос, который даст мне List<PersonApi> Объекты

class PersonApi {
  private String name;
  private String age;
  private String pincode ;
}

И у меня есть Объект Entity с именем Person

@Entity
@Table(name = "person_master")
public class Person{

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    Long id;

    @Column(name = "name")
    String name;

    @Column(name = "age")
    String age;

    @Column(name = "pincode ")
    String pincode ;
}

Моя запись изЗапрос после публикации будет выглядеть примерно так (представление данных ниже в псевдокоде)

[
"Arun","33","09876gh"
"James","34","8765468"
]

Мне нужно выполнить массовую проверку с использованием Spring JPA. Дайте List<PersonApi> и получите True или False на основе условия, что все записи в списке объектов PersonApi должны быть в базе данных.

Как это сделать?

1 Ответ

0 голосов
/ 21 сентября 2018

Псевдокод:

List<PersonApi> personsApiList = ...; //from request
List<Person> result = personRepository.findAll();

в вашем классе обслуживания вы можете получить доступ к своему хранилищу, чтобы получить все объекты базы данных и проверить, доступен ли полный список персоналий.

boolean allEntriesExist = result.stream().allMatch(person -> personsApiList.contains(createPersonApiFromPerson(person)));

public PersonApi createPersonApiFromPerson(Person person){
   return new PersonApi(person.getName(), person.getAge(), person.getPincode());
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...