我需要创建一个实体中包含的字段/值的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