使用dom4j工具包对xml文件解析
xml文件
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://www.example.org/web-app_2_5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.example.org/web-app_2_5 web-app_2_5.xsd" version="2.5"> <servlet> <servlet-name>helloServlet</servlet-name> <servlet-class>xxxxxxxx</servlet-class> </servlet> <servlet-mapping> <servlet-name>helloServlet</servlet-name> <url-pattern></url-pattern> </servlet-mapping> </web-app>
解析xml文件的代码 需要一个dom4j的jar包
package cn.cc.xml.dom; import java.util.List; import org.dom4j.Document; import org.dom4j.DocumentException; import org.dom4j.Element; import org.dom4j.io.SAXReader; import org.junit.Test; public class TestDom4j { @Test public void testReadWebXML(){ try { //1.获取解析器 SAXReader saxReader=new SAXReader(); //2.获得document文档对象 Document doc=saxReader.read("src/cn/cc/xml/schema/web.xml"); //3.获取根元素 Element rootElement=doc.getRootElement(); //System.err.println(rootElement.getName());//获取根元素的名称 //System.out.println(rootElement.attributeValue("version"));//获取根元素中的属性 //4.获取根元素下的子元素 List<Element> childElements=rootElement.elements(); //5.遍历子元素 for (Element element : childElements) { //6.判断元素名称是否servlet if("servlet".equals(element.getName())){ //7.获取servlet-name元素 Element servletName=element.element("servlet-name"); //8.获取servlet-class元素 Element servletClass=element.element("servlet-class"); System.out.println(servletName.getText()); System.out.println(servletClass.getText()); } } } catch (DocumentException e) { e.printStackTrace(); } } }