dom4j简介:dom4j是一个Java的XML API,是jdom的升级品,用来读写XML文件的。dom4j是一个十分优秀的JavaXML API,具有性能优异、功能强大和极其易使用的特点,它的性能超过sun公司官方的dom技术,同时它也是一个开放源代码的软件。它的主要接口都在org.dom4j这个包里定义。
Element:定义XML元素
定义一个XML文档对象,Element booksElement = document.addElements(books);
Element有几个重要的方法,1.addComment 添加注释 2.addAttirbute 添加属性 3.addElement 添加子元素
顺便加一点:
序列化:把对象转化为XML
反序列化:把XML转化为对象
通过XML Writer 生成物理文件
字符串与XML的转换
1.将字符串转化为XML
String text = “http://blog.csdn.net/u011344885”;
Document document = Document Helper.parseText(text);<pre name="code" class="java">writerDocumentToNewFile(document);
2.将文档或节点的XML转化为字符串
public void test()throws Exception{
//创建SAXReader对象
SAXReader reader = new SAXReader();
//读取文件 转换成Document
Document document = reader.read(new File("csdn.xml"));
//document转换为String字符串
String documentStr = document.asXML();
System.out.println("document 字符串:" + documentStr);
//获取根节点
Element root = document.getRootElement();
//根节点转换为String字符串
String rootStr = root.asXML();
System.out.println("root 字符串:" + rootStr);
//获取其中student1节点
Element student1Node = root.element("student1");
//student1节点转换为String字符串
String student1Str = student1Node.asXML();
System.out.println("student1 字符串:" + student1Str);
}
了解Xml中的名词,属性、节点、QName
QName(限定名):
1.来历:qname是qualified name 的简写
2.构成:由名字空间(namespace)前缀(prefix)以及冒号(:),还有一个元素名称构成
3.举例:<xsl:template match="foo">
xsl是名字空间前缀,template是元素名称,xsl:template 就是一个qname
节点:XML中的一对标签及其中间的值称为一个节点
属性:<property name="jdbcDao" ref="jdbcDao" />中name和ref就是属性
String 序列化成 XmlBean
默认情况下:类中的属性名或注释,转化成报文中的节点
有些属性我们不想被序列化,则加“transient”关键字