Я пытаюсь преобразовать файл json в объект java, однако, читая файл json file.however, когда я запускаю приложение весенней загрузки, он выбрасывает файл, который не найден, за исключением того, что файл существует в источнике / main / java / example / com path.
Как устранить ошибку. пожалуйста, найдите мои коды здесь: у меня есть два класса адреса и клиента и основной
Address class
public class Address {
private String street;
private String city;
private int zipcode;
private String country;
public String getStreet() {
return street;
}
public void setStreet(String street) {
this.street = street;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
public int getZipcode() {
return zipcode;
}
public void setZipcode(int zipcode) {
this.zipcode = zipcode;
}
public String getCountry() {
return country;
}
public void setCountry(String country) {
this.country = country;
}
@Override
public String toString() {
return "{" +
"street='" + street + '\'' +
", city='" + city + '\'' +
", zipcode=" + zipcode +
", country='" + country + '\'' +
'}';
}
}
Класс клиента
public class Customer {
private Long id;
private String name;
private String email;
private String phone;
private int age;
private String[] projects;
private Address address;
private List<String> paymentMethods;
private Map<String, Object> profileInfo;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String[] getProjects() {
return projects;
}
public void setProjects(String[] projects) {
this.projects = projects;
}
public Address getAddress() {
return address;
}
public void setAddress(Address address) {
this.address = address;
}
public List<String> getPaymentMethods() {
return paymentMethods;
}
public void setPaymentMethods(List<String> paymentMethods) {
this.paymentMethods = paymentMethods;
}
public Map<String, Object> getProfileInfo() {
return profileInfo;
}
public void setProfileInfo(Map<String, Object> profileInfo) {
this.profileInfo = profileInfo;
}
@Override
public String toString() {
return "Customer{" +
"id=" + id +
", name='" + name + '\'' +
", email='" + email + '\'' +
", phone='" + phone + '\'' +
", age=" + age +
", projects=" + Arrays.toString(projects) +
", address=" + address +
", paymentMethods=" + paymentMethods +
", profileInfo=" + profileInfo +
'}';
}
}
Demo1Application. java
package com.example.demo;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.springframework.boot.CommandLineRunner;
import java.io.File;
import java.io.IOException;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class Demo1Application implements CommandLineRunner {
public static void main(String[] args) {
SpringApplication.run(Demo1Application.class, args);
}
@Override
public void run(String[] args) throws IOException {
//create ObjectMapper instance
ObjectMapper objectMapper = new ObjectMapper();
//read json file and convert to customer object
Customer customer = objectMapper.readValue(new File("F:\\programs\\demo-1\\src\\main\\java\\com\\example\\demo\\json_file"), Customer.class);
//print customer details
System.out.println(customer);
}
}
вот ошибка:
Не удалось выполнить CommandLineRunner
в com.example.demo.Demo1Application.main (Demo1Application. java: 17) [ классы /: na]
Причина: java .io.FileNotFoundException: F: \ Programs \ demo-1 \ src \ main \ java \ com \ example \ demo \ json_file ( Неверный синтаксис имени файла, имени каталога или метки тома)
Может кто-нибудь помочь мне решить эту проблему