我需要創建一個實體中包含的字段/值的Hashmap,以便我可以使用它們將字符串中包含標籤的字符串替換爲字段名稱。java reflection創建字段/值hashmap
我有這樣的代碼:
public static String replaceTags(String message, Map<String, String> tags) ...
它取代消息發現等效值標籤所有標籤,但爲了建立映射表我需要採取「任何「實體並能夠從實體創建一個地圖。那麼,我怎麼能做到這一點呢?獲取我發送實體的例程,並返回包含所有字段和值的Map。
public static Map<String, String> getMapFromEntity(Object entity){
Map<String, String> map = new HashMap<String, String>();
...?????
return map;
}
我知道我可以使用反射,這是我已經找到了完成這件事的唯一方法,但是否有任何其他方式來完成相同的?我的意思是更有效的方式。
謝謝。
如果您不知道輸入字符串中可以存在哪些標籤,反射將是AFAIK的唯一方法。 – aishwarya
是@aishwarya,實體可以包含任何類型的數據,所以反射是唯一的方法,謝謝。 –
Dup的http://stackoverflow.com/questions/6796187/java-introspection-object-to-map – Vadzim