Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

วิธีแปลง JSON Object เป็น Enum ด้วย Jackson ใน Java

JSONObject สามารถแปลงข้อความจาก String เพื่อสร้างอ็อบเจกต์แบบ Map Enum ใช้สำหรับกำหนด ชุดของค่าคงที่ (constants) เมื่อเราต้องการรายการค่าที่กำหนดไว้ล่วงหน้าซึ่งไม่ใช่ข้อมูลตัวเลขหรือข้อความ เราสามารถใช้ enum ได้ เราสามารถแปลง JSON object เป็น enum ได้โดยใช้เมธอด readValue() ของคลาส ObjectMapper

ในตัวอย่างด้านล่าง เราสามารถแปลง/ถอดรหัส JSON object เป็น Java enum โดยใช้ไลบรารี Jackson

ตัวอย่างโค้ด

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