У меня есть много XSL-преобразований, которые полагаются на формат XML java.beans.XMLEncoder
, и мне интересно, могу ли я найти заменяемый lib, который имеет лучшую производительность. Я посмотрел на XStream, но его формат сериализации отличается.Замена на замену java.beans.XMLEncoder
Я ищу, чтобы заменить его, поскольку я работаю с устаревшей кодовой базой, которая имеет раздвоенную версию XMLEncoder
, и я хотел бы вернуть ее в нечто более стандартное, но java.beans.XMLEncoder
имеет гораздо худшую производительность.
Для класса Person
(с соответствующими добытчиками и сеттеров):
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 Converters, чтобы приблизиться к формату, но мне интересно, есть ли более легкое решение, прежде чем я пойду вниз по этой кроличьей дыре.