如何使用 Java 中的 Jackson 将 JSON 对象转换为枚举?
javajsonobject oriented programmingprogramming
JSONObject 可以解析字符串中的文本以生成 Map 类型的对象。Enum 可用于定义 常量集合,当我们需要一个预定义的值列表(这些值不代表某种数字或文本数据)时,我们可以使用枚举。我们可以使用 ObjectMapper 类的 readValue() 方法将 JSON 对象转换为枚举。
在下面的示例中,我们可以使用 Jackson 库将 JSON 对象转换/反序列化为 Java 枚举。
示例
import com.fasterxml.jackson.databind.*; public class JSONToEnumTest { public static void main(String arg[]) throws Exception { ObjectMapper mapper = new ObjectMapper(); Employee emp = mapper.readValue("{\"jobType\":\"CONTRACT\"}", Employee.class); System.out.println(emp.getJobType()); } public static class Employee { private JobType jobType; public JobType getJobType() { return jobType; } public void setJobType(JobType jobType) { this.jobType = jobType; } } public enum JobType { PERMANENT, CONTRACT, } }
输出
CONTRACT