java - XStream - marshal/unmarshal 的不同别名?

标签 java xstream

一些旧的 XML 仍然具有规范的类名。新的 XML 具有简单的名称。

我希望能够读取这两种格式,但请确保在编码时获得简单的名称。我尝试过使用...

xstream.alias("package.name.className", Clazz.class);
xstream.alias("className", Clazz.class);

解码工作正常,但编码是混合的。对于某些类,我得到简单的名称,其他类则得到规范的名称。

知道如何使用相同的 xstream 实例实现此目的吗?

最佳答案

最好的方法是为您的类(class)编写一个自定义转换器。

另一种方法是使用一个 xstream 实例使用别名进行解码,使用另一个 xstream 实例仅使用您想要的别名进行编码。

关于java - XStream - marshal/unmarshal 的不同别名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20382380/

相关文章:

java - 如何使用 XStream 将对象列表转换为 XML 文档

java - 使用 XStream 从 XML 文件生成 Java 类

java - 如何使用 xstream 更改映射到 xml 转换中根元素的名称

java - struts2 每个(ajax)请求的action class-1 类?

java - Ant工具工作问题

java - XStream-不包含某些值

java - XStream 流程注释

java - 使用 Facebook4j api 从页面获取帖子

java - 在java中将PDF读取为文件并使 "PDF"可编辑

java - 试图从 Arraylist 中删除一个对象 - 仍然可以访问对象