我想制作一个像这样的 map (字符串,对象)
{AssessmentId=0,Physical_name='ram',Physical_height=20,Physical_weight=60}
来 self 的 Pojo 类(class) - 初始评估
public class InitialAssessment {
private long AssessmentId;
private String physical_name;
private String physical_gender;
private int physical_height;
private float physical_weight;
// all getter And setter is Created here
}
不使用任何外部库,如 Gson 等。
最佳答案
您可以使用这种方法:
public Map getMapFromPojo(InitialAssessment assessment) throws Exception {
Map<String, Object> map = new HashMap<>();
if (assessment != null) {
Method[] methods = assessment.getClass().getMethods();
for (Method method : methods) {
String name = method.getName();
if (name.startsWith("get") && !name.equalsIgnoreCase("getClass")) {
Object value = "";
try {
value = method.invoke(assessment);
map.put(name.substring(name.indexOf("get") + 3), value);
} catch (Exception e) {
e.printStackTrace();
}
}
}
return map;
}
return null;
}
它会给你 pojo 类的映射,如下所示:
输出:
{AssessmentId=0, Physical_name='ram', Physical_gender='Male' , Physical_height=20, Physical_weight=60}
关于java - 如何创建具有原始数据的java POJO类/Json字符串的映射?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40803960/