Javaでは、https://github.com/FasterXML/jackson[Jackson]ライブラリを使用してJavaオブジェクトを `Map`に簡単に変換できます。
1.ジャクソンを入手する
pom.xml
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.6.3</version>
</dependency>
2.オブジェクトをマップに変換する
2.1「Student」オブジェクトを「java.util.Map」に変換するJackson 2の例
Student.java
package com.mkyong.examples;
import java.util.List;
public class Student {
private String name;
private int age;
private List<String> skills;
//getters setters
}
ObjectToMapExample.java
package com.mkyong.examples;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.util.Arrays;
import java.util.Map;
public class ObjectToMapExample {
public static void main(String[]args) {
ObjectMapper oMapper = new ObjectMapper();
Student obj = new Student();
obj.setName("mkyong");
obj.setAge(34);
obj.setSkills(Arrays.asList("java","node"));
//object -> Map
Map<String, Object> map = oMapper.convertValue(obj, Map.class);
System.out.println(map);
}
}
出力
{name=mkyong, age=34, skills=[java, node]}
参考文献
-
リンク://java/jackson-2-convert-java-object-to-from-json/[Jackson 2 –
オブジェクトをJSONに変換する方法]。
Jackson @Github
convert
リンク://tag/jackson/[jackson]リンク://タグ/java/[java]リンク://タグ/マップ/[マップ]リンク://タグ/オブジェクト/[オブジェクト]