jdom生成xml
程序员文章站
2022-03-03 15:54:30
...
有很多的技术能够操作xml,比如dmo4j,jdom和jdk中自带的api,很多的开源项目的配置文件都是由dom4j进行读取的,比如jboss,hibernate等,对xml文档的读取可以dom读取和sax两种方式,dom的方式是将xml文档一次性读取到内存中,读取的文档大小有限,而sax则是部分读取到内存中,不存在xml文档大而无法读取的情况,但一般对xml文档的读取都是用dom的方式,下面对比了几种操作xml文档的方式:
操作效率 | 编程复杂程度 | |
jdk api | 较快 | 较复杂 |
dom4j | 快 | 简单 |
jdom | 较快 | 简单 |
无论是那种方式读取xml文档,利用好xpath都是很重要的,能够很方便你的读取
jdom的jar包请去http://www.jdom .org 下载
package test.jdom;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.output.XMLOutputter;
import org.jdom.output.Format;
public class writeXML {
/**
* <selects>
* <select>
* <id>1</id>
* <name>hello world</name>
* </select>
* </selects>
*/
public static void main(String[] args) {
Element rootElt=new Element("selects");
Element selectElt=new Element("select");
Element idElt=new Element("id");
idElt.addContent("1");
Element nameElt=new Element("name");
nameElt.addContent("hello world");
selectElt.addContent(idElt);
selectElt.addContent(nameElt);
rootElt.addContent(selectElt);
Document doc=new Document(rootElt);
XMLOutputter out = new XMLOutputter();
out.setFormat(Format.getCompactFormat().setEncoding("GB2312"));
String xmlStr=out.outputString(doc);
System.out.println(xmlStr);
try {
out.output(doc,new FileOutputStream("c:/test.xml"));
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}