Как конвертировать XML в java.util.Map и наоборот
Я ищу легкий API (предпочтительно один класс) для преобразования
Map<String,String> map = new HashMap<String,String();
в XML и, наоборот, преобразовать XML обратно в карту.
пример:
Map<String,String> map = new HashMap<String,String();
map.put("name","chris");
map.put("island","faranga");
MagicAPI.toXML(map,"root");
результат:
<root>
<name>chris</chris>
<island>faranga</island>
</root>
и назад:
Map<String,String> map = MagicAPI.fromXML("...");
Я не хочу использоватьJAXB или жеAPI преобразования JSON, Это не должно заботиться о вложенных картах или атрибутах или чем-то еще, просто этот простой случай Какие-либо предложения?
редактировать: Я создал образец рабочей копии и вставки. БлагодаряФВУ а такжеМихал Бернхард.
Загрузите последнюю платформу XStream«только ядро» достаточно.
Map<String,Object> map = new HashMap<String,Object>();
map.put("name","chris");
map.put("island","faranga");
// convert to XML
XStream xStream = new XStream(new DomDriver());
xStream.alias("map", java.util.Map.class);
String xml = xStream.toXML(map);
// from XML, convert back to map
Map<String,Object> map2 = (Map<String,Object>) xStream.fromXML(xml);
Никаких конвертеров или чего-либо еще не требуется. ТолькоXStream-x.y.z.jar достаточно.