JSON Jackon反序列化json中的文件路径(字符串)到java中的文件对象
问题描述:
我使用Jackson的对象映射器将Json文件映射到嵌套的Java bean集合。根据我在Json中定义的内容正确设置嵌套的Bean及其String,Integer和Enum对象。JSON Jackon反序列化json中的文件路径(字符串)到java中的文件对象
某些字符串表示文件路径,并且将jackon对象映射器直接将文件路径字符串映射到Java文件对象将会很好。
这可能吗?
答
我觉得,它的工作原理就是这样。请看,看我的例子:
import java.io.File;
import java.io.IOException;
import com.fasterxml.jackson.core.JsonFactory;
import com.fasterxml.jackson.core.JsonParser;
import com.fasterxml.jackson.databind.ObjectMapper;
public class JacksonProgram {
public static void main(String[] args) throws IOException {
ObjectMapper objectMapper = new ObjectMapper();
JsonFactory jsonFactory = new JsonFactory();
JsonParser parser = jsonFactory.createJsonParser("{\"id\":\"1S200D\", \"path\":\"/tmp/test/file.txt\"}");
Entity employee = objectMapper.readValue(parser, Entity.class);
System.out.println(employee);
}
}
class Entity {
private String id;
private File path;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public File getPath() {
return path;
}
public void setPath(File path) {
this.path = path;
}
@Override
public String toString() {
return "Entity [id=" + id + ", path=" + path + "]";
}
}
正如你所看到的,我刚刚宣布财产为File
。