Здесь объект User
сопоставляется с Document
, тогда как каждый атрибут должен сопоставляться с объектом Element
в нечетком сопоставлении
Если у вас есть Коллекция объекта User
в java, вы можете преобразовать его в такие объекты Document / Element, как этот
List<User> users = // fetch data from db
List<Document> documents = users.stream().map(user -> {
return new Document.Builder(userId)
.addElement(new Element.Builder<String>().setValue(user.getFirstName() + " " + user.getLastName()).setType(NAME).createElement())
.addElement(new Element.Builder<String>().setValue(user.getAddress()).setType(ADDRESS).createElement())
.createDocument();
}).collect(Collectors.toList());
Если у вас есть список документов, вы можете передать его одному из методов MatchService, чтобы вызвать нечеткое совпадение
MatchService matchService = new MatchService();
Map<String, List<Match<Document>>> result = matchService.applyMatchByDocId(documents);
Обратите внимание, что этот метод выше вернет вам результат, сгруппированный по userId