Я пытаюсь прочитать мой .json файл. Это класс VehicleRepository
.
"{\"vehicles\":[{\"id\":\"9467d079-4502-4dba-9d23-b8506dfc7ef4\",\"plate\":\"ghghghhg\",\"manufacturer\":\"Alfa Romeo\",\"model\":\"hgghgh\",\"color\":\"Amarelo\"}]}"
Это ошибка:
com.fasterxml.jackson.databind.exc.MismatchedInputException: Невозможно создать экземпляр VehicleRepository
(хотя существует хотя бы один Создатель): Невозможно создать экземпляр VehicleRepository
(хотя существует хотя бы один Создатель): нет String- метод конструктора аргумента / фабрики для десериализации из значения String в [Source: (File); строка: 1, столбец: 1]
Для создания файла .json
я использую это:
repository.vehicles = new ArrayList<Vehicle>();
repository.vehicles.add(vehicle);
json = mapper.writeValueAsString(repository);
ObjectMapper write = new ObjectMapper();
write.writeValue(new File("Database//Vehicles.json"), json);
И чтобы прочитать файл .json
, я использую это:
VehicleRepository newRepository = mapper.readValue(new File("Database\\Vehicles.json"), VehicleRepository.class);
И в приведенной выше строке возникает ошибка.
Это мой Vehicle
класс:
public class Vehicle {
private String id;
private String plate;
private String manufacturer;
private String model;
private String color;
public Vehicle() {}
public Vehicle(String plate, String manufacturer, String model, String color) {
this.id = UUID.randomUUID().toString();
this.plate = plate;
this.manufacturer = manufacturer;
this.model = model;
this.color = color;
}
public Vehicle(String id, String plate, String manufacturer, String model, String color) {
this.id = id;
this.plate = plate;
this.manufacturer = manufacturer;
this.model = model;
this.color = color;
}
public String getId() {
return id;
}
public String getPlate() {
return plate;
}
public void setPlate(String plate) {
this.plate = plate;
}
public String getManufacturer() {
return manufacturer;
}
public void setManufacturer(String manufacturer) {
this.manufacturer = manufacturer;
}
public String getModel() {
return model;
}
public void setModel(String model) {
this.model = model;
}
public String getColor() {
return color;
}
public void setColor(String color) {
this.color = color;
}
}
А это мой VehicleRepository
класс:
public class VehicleRepository {
List<Vehicle> vehicles;
public VehicleRepository() {
}
public List<Vehicle> getVehicles() {
return vehicles;
}
public void setVehicles(List<Vehicle> vehicles) {
this.vehicles = vehicles;
}
}
Может кто-нибудь мне помочь?