XML DOM和HTML DOM类似,XML DOM将整个XML文档加载到内存,生成一个DOM树,
并获得一个Document对象,通过Document对象就可以对DOM进行操作
DOM中的核心概念就是节点,在XML文档中的元素、属性、文本等,在DOM中都是节点!
如果需要使用dom4j,必须导入jar包。
dom4j必须使用核心类SaxReader加载xml文档获得Document通过Document对象获得文档的根元素,然后就可以操作了。
步骤:
1.获取解析器
2.获得document文档对象
3.获取根元素
4.获取根元素下的子元素
5.遍历子元素
6.判断元素名称为servlet的元素
7.获取servlet-name元素
8.获取servlet-class元素
public static void main(String[] args) throws DocumentException { //创建SAXReader对象 SAXReader sax=new SAXReader(); //加载xml文件,获取Document对象 Document doc=sax.read("src/com/oracle/demo02/web.xml"); //获取根元素 Element root=doc.getRootElement(); System.out.println(root.getName()); //获取根元素的所有子元素 List<Element> list=root.elements(); for(Element e:list){ //找到servlet元素之后再获取里面子元素 if(e.getName().equals("servlet")){ Element servletName=e.element("servlet-name"); Element servletClass=e.element("servlet-class"); System.out.println(servletName.getText()); System.out.println(servletClass.getText()); } }
public static void main(String[] args) throws DocumentException, ClassNotFoundException, InstantiationException, IllegalAccessException { //创建SAXReader对象 SAXReader sax=new SAXReader(); //加载xml文件,获取Document对象 Document doc=sax.read("src/com/oracle/demo03/web.xml"); //获取根元素 Element root=doc.getRootElement(); //获取servlet元素 Element servlet=root.element("servlet"); //获取servlet元素中的servlet-class元素 Element servletClass=servlet.element("servlet-class"); //System.out.println(servletClass.getText()); //获取MyServlet的class对象 Class c=Class.forName(servletClass.getText()); //快速创建对象 MyServlet my=(MyServlet)c.newInstance(); //调用方法 my.init(); my.service(); my.destroy(); }
原文:https://www.cnblogs.com/longmingyeyu/p/12843763.html