เราสามารถใช้ไลบรารี Jackson เพื่อแปลงวัตถุ Java เป็นแผนที่ได้อย่างง่ายดาย
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.6.3</version>
</dependency>
หากใช้ในโปรเจ็กต์ Android คุณสามารถเพิ่มแจ็คสันใน build.gradle ของแอพได้ดังนี้:
implementation 'com.fasterxml.jackson.core:jackson-core:2.9.8'
implementation 'com.fasterxml.jackson.core:jackson-annotations:2.9.8'
implementation 'com.fasterxml.jackson.core:jackson-databind:2.9.8'
การใช้งานตัวอย่าง
public class Employee {
private String name;
private int id;
private List<String> skillSet;
}
public class ObjectToMap {
public static void main(String[] args) {
ObjectMapper objectMapper = new ObjectMapper();
Employee emp = new Employee();
emp.setName("XYZ");
emp.setId(1011);
emp.setSkillSet(Arrays.asList("python","java"));
Map<String, Object> map = objectMapper.convertValue(emp,
Map.class);
System.out.println(map);
}
}
เอาท์พุต:
{name = XYZ, id = 1011, skills = [python, java]}
java.beans.Introspector
.getBeanInfo()
. มันถูกสร้างขึ้นใน JDK