2016-11-25 36 views
1

我要讓這樣如何創建具有原始數據的Java POJO類/ Json的字符串?

{AssessmentId=0, Physical_name='ram', Physical_height=20, Physical_weight=60}

從我的POJO類一地圖(字符串對象) - InitialAssessment

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任何外部庫等等

+1

反射是這樣做的一種方式 –

回答

0

你可以使用這個應用程序羅奇:

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} 
相關問題