(де) сериализовать объект (Hashmap) из XML этой формы с помощью XStream - PullRequest
0 голосов
/ 07 июля 2010

XML:

Hashmap JAVA: map = {key1 = text1, key2 = text2}

это не работает.почему?

String xml = "<nodes><node id=\"key1\"><![CDATA[text1]]></node><node id="\key2\"><![CDATA[text2]]></node></nodes>";

XStream xs = new XStream();
xs.alias("nodes", Map.class);
xs.alias("node", String.class);
xs.useAttributeFor("id",String.class);
Map<String,String> map= (Map<String,String>) xs.fromXML(xml);
System.out.println(map);

1 Ответ

2 голосов
/ 07 июля 2010

Если вы можете определить свою структуру XML, вам следует проверить Преобразователь карт и настроить свой XML.

Если нет, вам следует написать свой собственный пользовательский преобразователь .Вы можете увидеть эту ветку , чтобы проверить реализацию, аналогичную вашим потребностям.

...