我正在寻找可以构造使用命名空间的XML文档的示例Java代码.我似乎无法使用我喜欢的常用工具找到任何东西,所以希望有人可以帮助我.
我正在尝试将ResultSet转换为XML文件.我首先使用这个例子进行序列化.
import org.w3c.dom.bootstrap.DOMImplementationRegistry;
import org.w3c.dom.Document;
import org.w3c.dom.ls.DOMImplementationLS;
import org.w3c.dom.ls.LSSerializer;
...
DOMImplementationRegistry registry = DOMImplementationRegistry.newInstance();
DOMImplementationLS impl =
(DOMImplementationLS)registry.getDOMImplementation("LS");
...
LSSerializer writer = impl.createLSSerializer();
String str = writer.writeToString(document);
Run Code Online (Sandbox Code Playgroud)
在我完成这项工作后,我尝试验证我的XML文件,有几个警告.一个关于没有doctype的人.所以我尝试了另一种方法来实现它.我遇到了Transformer课程.这个类让我设置编码,doctype等.
以前的实现支持自动命名空间修复.以下不是.
private static Document toDocument(ResultSet rs) throws Exception {
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
factory.setNamespaceAware(true);
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.newDocument();
URL namespaceURL = new URL("http://www.w3.org/2001/XMLSchema-instance");
String namespace = "xmlns:xsi="+namespaceURL.toString();
Element messages = doc.createElementNS(namespace, "messages");
doc.appendChild(messages);
ResultSetMetaData rsmd = rs.getMetaData();
int colCount = rsmd.getColumnCount();
String attributeValue = "true";
String attribute = …Run Code Online (Sandbox Code Playgroud)