【发布时间】:2014-10-10 09:57:11
【问题描述】:
我使用 xstream 将对象转换为 xml。
public class XXXInfo
{
private String id;
private String name;
private YYYInfo yyy;
}
成员变量的名称已正确写入 xml 文件。
但是xml最外层的元素标签带有我的包名前缀。
如何修改成我想要的样子?
【问题讨论】:
我使用 xstream 将对象转换为 xml。
public class XXXInfo
{
private String id;
private String name;
private YYYInfo yyy;
}
成员变量的名称已正确写入 xml 文件。
但是xml最外层的元素标签带有我的包名前缀。
如何修改成我想要的样子?
【问题讨论】:
你应该使用注解来控制它。
@XStreamAlias("names you want")
public class XXXInfo
{
private String id;
private String name;
private YYYInfo yyy;
}
然后记得调用XStream.processAnnotations(XXXInfo.class)使其生效。
或者你也可以调用XStream.autodetectAnnotations(true)开启注解检测功能。
祝你好运!
【讨论】:
XStream 对象上的alias method 来注册别名,但我个人更喜欢注释,因为它将别名定义与其别名的类保持在一起。然而,当您使用无法修改的第三方类时,这是一个有用的替代方法。