我有很多依赖于java.beans.XMLEncoder XML格式的XSL转换,我想知道是否能够找到性能更好的插入替换库。我看过XStream,但是它的序列化格式是不同的。
当我使用一个具有分叉版本的XMLEncoder的遗留代码库时,我希望将它替换,我想将它返回到更标准的版本,但是java.beans.XMLEncoder的性能要差得多。
对于类Person (带有适当的getter和setter):
public class Person {
private String name;
private List<String> favoriteColors;
private Date birthDate;
private int age;
}XMLEncoder生成的XML如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<java version="1.8.0_66" class="java.beans.XMLDecoder">
<object class="Person" id="Person0">
<void property="age">
<int>40</int>
</void>
<void property="birthDate">
<object class="java.util.Date">
<long>175064400000</long>
</object>
</void>
<void property="favoriteColors">
<void method="add">
<string>red</string>
</void>
<void method="add">
<string>green</string>
</void>
</void>
<void property="name">
<string>John Doe</string>
</void>
</object>
</java>我猜可能会创建一堆XStream转换器来近似于格式,但我想知道在我进入兔子洞之前是否有一个更简单的解决方案。
发布于 2016-04-22 18:24:00
如果其他人稍后会遇到这种情况,只要您不关心元素的顺序,通过XStream实现就可以将您带到那里。您可能会做一个更深层次的实现,允许您控制元素的顺序,但是我最终放弃了这个想法,我只打算处理它,直到我能够重新编写有关的代码。
https://stackoverflow.com/questions/34659377
复制相似问题