查了好多资料,发现还是不全,干脆自己整理吧,至少保证在我的做法正确的,以免误导读者,也是给自己做个记录吧!
import java.io.StringWriter;
import java.io.*;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.apache.xml.serialize.OutputFormat;
import org.apache.xml.serialize.XMLSerializer;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
public class DOMGenerate
{
//主方法,程序的进口
public static void main( String[] args )
{
try
{
//创立DocumentFactory对象
DocumentBuilderFactory dbf =
DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
//创立Document对象
Document doc = db.newDocument();
//创立根元素
Element root = doc.createElement("Student");
//创立name元素
Element item = doc.createElement("name");
//为name元素增加文本子节点
item.appendChild(doc.createTextNode("张三"));
//将name元素添加到根元素下
root.appendChild(item);
//创立age元素
item = doc.createElement("age");
//为age元素增加文本子元素
item.appendChild(doc.createTextNode("28" ));
//将age元素添加到根元素下
root.appendChild(item);
//创立high元素
item = doc.createElement("high");
//为high元素添加文本子元素
item.appendChild(doc.createTextNode("1.72" ));
//将high元素添加到根元素下
root.appendChild(item);
//创立score元素
item = doc.createElement("score");
//创立Java元素
Element lesson = doc.createElement("Java");
//为Java元素添加文本子元素。
lesson.appendChild(doc.createTextNode("95"));
//将Java元素添加到score元素
item.appendChild( lesson );
//创立Struts元素
lesson = doc.createElement("Struts");
//为Struts元素添加文本子元素。
lesson.appendChild(doc.createTextNode("90"));
//将Struts元素添加到score元素
item.appendChild( lesson );
//创立Hibernate元素
lesson = doc.createElement("Hibernate");
//为Hibernate元素添加文本子元素。
lesson.appendChild(doc.createTextNode("90"));
//将Hibernate元素添加到score元素
item.appendChild( lesson );
//将score元素添加到根元素下
root.appendChild( item );
//为文档指定根元素
doc.appendChild( root );
//指定输出格式
OutputFormat format = new OutputFormat(doc
, "GBK" , true);
StringWriter stringOut = new StringWriter();
XMLSerializer serial = new XMLSerializer( stringOut, format );
//将DOM树转换成字符串
serial.asDOMSerializer();
serial.serialize(doc.getDocumentElement());
//创立文件输出流
PrintStream ps = new PrintStream(new FileOutputStream("student.xml"));
//输出XML文件
ps.println(stringOut.toString());
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
}
//注意:要导入两个jar包 xml-apis.jar和xercesImpl.jar
文章结束给大家分享下程序员的一些笑话语录: 现在社会太数字化了,所以最好是有一个集很多功能于一身的设备!
--------------------------------- 原创文章 By
添加和hibernate
---------------------------------