Поскольку я наткнулся на этот пост, чтобы прочитать список объектов User, вот что я сделал, используя Jackson
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.dataformat.yaml.YAMLFactory;
import java.io.File;
import java.io.IOException;
import java.util.List;
public class LoadContacts {
private static String yamlLocation = "path_to/../contacts.yml";
public static void main(String[] args) throws IOException {
ObjectMapper mapper = new ObjectMapper(new YAMLFactory());
try {
List<Contact> contactList = mapper.readValue(new File(yamlLocation), new TypeReference<List<Contact>>(){});
contactList.forEach(System.out::println);
} catch (Exception e) {
e.printStackTrace();
}
}
}
mapper.readValue(..)
, принимает несколько аргументов, таких как URL, строка для первогопары.Это решение использует File
.Одним из изменений, которое я сделал для правильной работы проблемы с OP, было определение phoneNumbers следующим образом:
public List<Phone> phoneNumbers;