XMLEncoder (java.beans.XMLEncoder) уже включен в JDK и позволяет сохранять объекты java в XML без каких-либо внешних библиотек или инструментов.
Пример класса:
public class Foo {
private String foo ;
public void setFoo(String s) {
foo = s;
}
public String getFoo() {
return foo;
}
}
Вспомогательный класс для сериализации в XML:
import java.beans.XMLEncoder;
import java.io.*;
public class FooHelper {
public static void write(Foo f, String filename) throws Exception{
XMLEncoder encoder =
new XMLEncoder(
new BufferedOutputStream(
new FileOutputStream(filename)));
encoder.writeObject(f);
encoder.close();
}
}
Полученный XML:
<?xml version="1.0" encoding="UTF-8"?>
<java version="1.5.0-beta" class="java.beans.XMLDecoder">
<object class="Foo">
<void property="foo">
<string>bar</string>
</void>
</object>
</java>