我非常想存档,在 Java 中的how-to-serialize-deserialize-simple-classes-to-xml-and-back (C#) 中做了什么。如果可能,我想避免为每个类编写序列化/反序列化方法。
例如,序列化的一部分:
XMLOutputFactory xof = null;
XMLStreamWriter2 writer = null;
try {
resp.setContentType("text/plain");
xof = XMLOutputFactory.newInstance();
writer = (XMLStreamWriter2) //
xof.createXMLStreamWriter(resp.getOutputStream());
writer.writeStartDocument("1.0");
writer.writeStartElement("data");
//
// Magic happens here.
//
writer.writeEndElement();
writer.writeEndDocument();
} catch (XMLStreamException e) {
e.printStackTrace();
resp.sendError(1, "Problem 1 occured.");
} finally {
try {
writer.flush();
writer.close();
} catch (XMLStreamException e) {
e.printStackTrace();
resp.sendError(2, "Problem 2 occured.");
}
}
不是这个问题的一部分,因为我正在尝试逐个解决问题,但可能会让您了解我正在尝试做什么。当我反序列化时,我还想检查输入是否有效。最终我想使用带有序列化形式的 XSLT 转换。