0

问这个问题似乎很愚蠢。我对 jdbc 很陌生,并试图按照教程进行操作。本教程试图以“mapping.xml”提供的解析形式存储 XML 数据。下面是示例代码:

 public static void main (String args[]) {
    Document mapping = null;
    Document dataDoc = null;
    Document newDoc = null;
      try {

          DocumentBuilderFactory dbfactory = DocumentBuilderFactory.newInstance();
          DocumentBuilder docbuilder = dbfactory.newDocumentBuilder();
          mapping = docbuilder.parse("mapping.xml");
          dataDoc = docbuilder.newDocument();

          //Instantiate the new Document
          newDoc = docbuilder.newDocument();
      } catch (Exception e) {
          System.out.println("Errors with creating document: "+e.getMessage());
       }   

但是,在运行代码之后,没有创建新的 XML 文档,也没有捕获到异常。谁能帮我吗?

谢谢!!

4

1 回答 1

1

您实际上并没有在此处存储任何 XML 文档,您几乎没有在内存中创建 XML 文档的DOM 表示。为了实际存储文件,您需要以下代码片段:

TransformerFactory factory = TransformerFactory.newInstance();
Transformer transformer = factory.newTransformer();
Result result = new StreamResult(new File("output.xml"));
Source source = new DOMSource(dataDoc);
transformer.transform(source, result);

第三行很关键。

顺便说一句,请某人检查您的代码:

  • 方法太长了
  • 你没有正确处理异常
  • DOM 可能不是导出大量数据的最佳选择
于 2012-11-18T20:31:51.627 回答