xml的约束与解析
作者:互联网
DTD约束
需要在头部引入:
<!DOCTYPE web-app SYSTEM "web-app_2_3.dtd">
格式:
<web-app> <servlet> <servlet-name></servlet-name> <servlet-class></servlet-class> </servlet> <servlet-mapping> <servlet-name></servlet-name> <url-pattern></url-pattern> </servlet-mapping> </web-app>
约束:
?可以出现,但只能出现一次
*允许出现任意次数,0
+最少出现一次,可多次
()分组
|选择一个 a|b
,需要按指定顺序 a,b,c
Schema约束
需要在头部添加
<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">
DOM4J解析
//创建解析器对象 SAXReader sax=new SAXReader(); //加载xml文件获取dom对象 Document doc=sax.read("src/com/oracle/demo02/web.xml"); //获得根元素web-app Element root=doc.getRootElement(); //先获取根下的servlet元素 Element servlet=root.element("servlet"); //获取servlet下的servlet-class元素对象 Element servletClass=servlet.element("servlet-class"); //获取完整的包名+类名 String classname=servletClass.getText(); System.out.println(classname); //反射调用MyServlet中的所有方法 Class c=Class.forName(classname); MyServlet my=(MyServlet)c.newInstance(); my.init();//创建 my.service();//执行 my.destroy();//结束
标签:xml,web,my,app,约束,MyServlet,解析,servlet 来源: https://www.cnblogs.com/god3064371/p/11769468.html