1 /*
2 * To change this template, choose Tools | Templates
3 * and open the template in the editor.
4 */
5
6 package analyzewdsl;
7
8 import java.io.File;
9 import java.io.FileOutputStream;
10 import java.io.IOException;
11 import java.net.URLDecoder;
12 import java.util.logging.Level;
13 import java.util.logging.Logger;
14 import org.jdom.Document;
15 import org.jdom.Element;
16 import org.jdom.JDOMException;
17 import org.jdom.input.SAXBuilder;
18 import org.jdom.output.XMLOutputter;
19 import org.jdom.xpath.XPath;
20
21 /**
22 *
23 * @author root
24 */
25 public class Main {
26
27 private Document doc;
28
29 private Element element;
30
31
32
33 public static void main(String[] args) {
34 new Main().wsdl();
35 }
36
37 /**
38 * @param args the command line arguments
39 */
40 public void wsdl() {
41 // TODO code application logic here
42
43 SAXBuilder builder=new SAXBuilder();
44 try {
45
46
47 String currentJarPath = URLDecoder.decode(Main.class.getProtectionDomain().getCodeSource().getLocation().getFile()+"!Hello.wsdl", "UTF-8");
48 System.out.println(currentJarPath);
49
50 doc = builder.build(currentJarPath);
51 element=doc.getRootElement();
52
53 Element e=(Element)XPath.selectSingleNode(element, "//xsd:import");
54
55
56 e.setAttribute("schemaLocation", "aaa");
57 System.out.println(e.getAttributeValue("schemaLocation").toString());
58
59
60 XMLOutputter out = new XMLOutputter();
61
62 // String s=this.getClass().getResource("/").toString();
63 // System.out.println(s);
64 //
65 out.output(doc,new FileOutputStream(new File(currentJarPath.replaceAll("file:",""))));
66
67 } catch (JDOMException ex) {
68 Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
69 } catch (IOException ex) {
70 Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
71 }
72 }
73
74 }
75
分享到:
相关推荐
这些类构成了JDOM的核心,它们帮助开发者构建和操作XML文档。 在解析XML文件时,JDOM提供了SAXBuilder和DOMBuilder两种方式。SAXBuilder基于事件驱动,适用于处理大型XML文件,因为它占用较少的内存。DOMBuilder则...
JDOM是Java中一个用于处理XML文档的库,它提供了一种高效且方便的方式来创建、读取、修改XML文件。本篇文章将深入探讨如何使用JDOM来读取XML文件。 首先,我们需要了解JDOM的基本概念。JDOM通过构建一棵DOM...
8. 保存XML:使用`XMLOutputter`类将修改后的DOM树写回XML文件。例如:`XMLOutputter outputter = new XMLOutputter(); outputter.output(document, new FileOutputStream("output.xml"));` 在实际应用中,我们可能...
### 利用 JDOM 操作 XML 文档 #### 一、引言 JDOM(Java Document Object Model)是一种用于处理 XML 数据的 Java 库。它提供了面向对象的 API,允许开发人员以简单直观的方式创建、读取、更新和保存 XML 文档。与 ...
通过以上步骤,我们便能使用JDOM库在Java中高效地读取和操作XML文件。JDOM的优势在于它提供了直观且符合Java习惯的API,使得XML处理变得更加简单。然而,对于大型XML文件,考虑到性能因素,可能需要考虑使用其他解析...
最后一步是将修改后的 XML 文档保存到一个新的文件中: ```java XMLOutputter xml = new XMLOutputter(); xml.output(doc, new FileOutputStream("cute.xml")); // 保存修改后的 XML 到 cute.xml ``` 这里使用了 `...
在实际开发中,使用JDOM操作XML文档可以极大地简化代码,提高效率。然而,需要注意的是,JDOM虽然简单易用,但在处理大型XML文件时可能会消耗大量内存。对于性能要求较高的场景,可以考虑使用SAX(Simple API for ...
最后,为了保存对XML文件的修改,我们需要创建`Transformer`并将其应用于`Document`: ```java import javax.xml.transform.TransformerFactory; import javax.xml.transform.dom.DOMSource; import javax.xml....
通过JDOM,我们可以直接在内存中操作XML文档,这使得XML数据处理更加便捷。 **XML基础** XML(Extensible Markup Language)是一种用于标记数据的语言,广泛应用于数据交换、配置文件和文档存储等领域。XML文档...
XML(eXtensible Markup...总之,DOM和JDOM是Java中解析XML的重要工具,它们提供了灵活的方式来读取、修改和写入XML文件。根据项目需求和性能考虑,选择合适的方法并熟练掌握其用法,能极大地提升XML处理的效率和质量。
最后,使用`Transformer`将修改后的`Document`对象写回XML文件。 ```java TransformerFactory transformerFactory = TransformerFactory.newInstance(); Transformer transformer = transformerFactory....
- **修改XML文档**:找到特定的`student`元素,更新其属性值,如改变某个学生的年龄,然后保存修改后的文档。 4. **效率与性能** JDOM虽然提供了方便的API,但相对于DOM4J等其他库来说,它的内存占用较高,因为...
本实例将详细介绍如何使用JDOM解析XML,包括生成新的XML文件、读取XML以及修改XML。 1. **生成新的XML文件** 使用JDOM创建XML文件,首先需要构建一个`Element`对象作为根节点,然后添加子元素和属性。以下是一个...
JDOM提供了一种纯Java的方式来构建和操作XML文档,使得它在Java环境中特别方便。 JDOM的核心概念是基于DOM(Document Object Model)的,DOM是一种树形结构,将XML文档表示为一系列的节点,包括元素、属性、文本等...
JDOM是Java Document Object Model的简称,它提供了一种高效、便捷的方式来创建和操作XML文档。 JDOM 1.0是JDOM的一个早期版本,它为开发者提供了全面的API来处理XML文档。这个版本支持XML的读取、写入和修改,同时...
它提供了直接在内存中构建和操作XML文档的方法,使得XML解析和生成变得简单。 ### 2. 安装与导入 在项目中使用JDOM,首先需要添加JDOM的依赖。如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ```xml ...
TestDom4jMjy.java可能是测试解析XML的代码,它可能包含了上述提到的一些操作,如加载XML文件、解析、修改和保存。例如: ```java import org.jdom2.*; import org.jdom2.input.SAXBuilder; import org.jdom2....
6. **保存修改**:修改完成后,可以使用`XMLOutputter`将`Document`对象写回XML文件。 ```java XMLOutputter outputter = new XMLOutputter(); outputter.output(document, new FileOutputStream("output.xml"))...
不过,需要注意的是,对于非常大的XML文件,由于JDOM将整个文档加载到内存中,可能会消耗大量资源。在这种情况下,可以考虑使用其他如StaX或DOM4J等流式或部分加载的解析器。 在学习和使用JDOM时,记得查阅官方文档...
JDOM提供了`SAXBuilder`和`DOMBuilder`来解析XML文件,它们分别基于SAX(Simple API for XML)和DOM解析器。以下是一个使用`SAXBuilder`解析XML文档的例子: ```java import org.jdom2.Document; import org.jdom2....