2014-10-10 3 views
1

Я использую xstream для преобразования объекта в xml.Как управлять меткой элемента xml, сгенерированной xstream?

public class XXXInfo 
{ 
    private String id; 

    private String name; 

    private YYYInfo yyy; 
} 

имя переменной элемента правильно записано в XML-файл.

но метка элемента для внешнего слоя xml поставляется с префиксом имени моего пакета.

Как изменить его на то, что я хочу?

ответ

2

Вы должны использовать аннотацию, чтобы контролировать это.

@XStreamAlias("names you want") 
public class XXXInfo 
{ 
    private String id; 

    private String name; 

    private YYYInfo yyy; 
} 

, а затем не забудьте позвонить XStream.processAnnotations(XXXInfo.class), чтобы сделать его эффективным.

или вы также можете позвонить XStream.autodetectAnnotations(true), чтобы включить функцию обнаружения аннотаций.

Удачи!

+0

Он работает, спасибо! – shangyin

+1

В качестве альтернативы вы можете использовать метод [alias] (http://xstream.codehaus.org/javadoc/com/thoughtworks/xstream/XStream.html#alias (java.lang.String,% 20java.lang.Class)) на объект XStream для регистрации псевдонимов, но лично я предпочитаю аннотации, поскольку он сохраняет определение псевдонима вместе с классом, который он накладывает. Однако это полезная альтернатива знать, когда вы работаете со сторонними классами, которые вы не можете изменить. –

+0

Хорошо, я вижу. Благодарю. – shangyin

Смежные вопросы