首页 > 文章列表 > 如何使用Jackson在Java中将JSON对象转换为枚举类型?

如何使用Jackson在Java中将JSON对象转换为枚举类型?

json jackson 枚举类型
343 2023-09-02

JSONObject可以解析字符串中的文本以生成Map类型的对象。 枚举可用于定义常量集合,当我们需要一个不代表某种数字或文本数据的预定义值列表时,我们可以使用枚举。我们可以使用 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