JSON Jackon将JSON中的文件路径(字符串)反序列化为java中的文件对象

JSON Jackon将JSON中的文件路径(字符串)反序列化为java中的文件对象,java,json,jackson,Java,Json,Jackson,我正在使用Jackson的对象映射器将Json文件映射到一组嵌套的JavaBean。嵌套bean及其字符串、整数和枚举对象是根据我在Json中定义的内容正确设置的 其中一些字符串表示文件路径,最好让jackon对象映射器直接将文件路径字符串映射到Java文件对象 这可能吗 我认为,默认情况下它是这样工作的。请看我的例子: import java.io.File; import java.io.IOException; import com.fasterxml.jackson.core.Json

我正在使用Jackson的对象映射器将Json文件映射到一组嵌套的JavaBean。嵌套bean及其字符串、整数和枚举对象是根据我在Json中定义的内容正确设置的

其中一些字符串表示文件路径,最好让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 + "]";
    }
}
如您所见,我刚刚将属性声明为
文件