我正在寻找一种将 Java 对象序列化为 XML 的方法,以供 RESTful Web 服务使用。我没有 XSD。
我查看了以下内容:
JAXB - 相当重,需要类以及 ObjectFactory 类和/或 jaxb.index 文件上的注释
简单 - 需要注释,但不需要其他配置类/文件。不幸的是它无法序列化 Sets。
XStream - 不需要注释等,但不支持泛型
还有其他人有什么建议吗?
最佳答案
import java.beans.XMLEncoder;
import java.beans.XMLDecoder;
import java.io.*;
public class XMLSerializer {
public static void write(Object f, String filename) throws Exception{
XMLEncoder encoder =
new XMLEncoder(
new BufferedOutputStream(
new FileOutputStream(filename)));
encoder.writeObject(f);
encoder.close();
}
public static Object read(String filename) throws Exception {
XMLDecoder decoder =
new XMLDecoder(new BufferedInputStream(
new FileInputStream(filename)));
Object o = (Object)decoder.readObject();
decoder.close();
return o;
}
}
关于java - 适用于 Java 的简单 XML 序列化器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3056896/