通过解析Xml配置文件,获取配置信息,进行实例化
2017-06-13 10:49
801 查看
测试类
web.xml 配置文件
接口
实例化1
实例化2
运行效果
package cn.itheima.web.servlet1; import org.dom4j.Document; import org.dom4j.Element; import org.dom4j.io.SAXReader; import org.junit.Test; public class TestMyServlet { @Test public void testMyServlet(){ try { //1.创建解析器对象 SAXReader saxReader = new SAXReader(); //2.使用解析器加载web.xml文件得到document对象 Document document = saxReader.read("src/cn/itheima/web/servlet1/web.xml"); //3.获取根元素节点 Element rootElement = document.getRootElement(); //4.根据元素名称获取子元素节点 Element servletElement = rootElement.element("servlet"); //5.根据元素名称获取servlet-class的文本节点 String servletClass = servletElement.element("servlet-class").getText(); //System.out.println(servletClass); //6.通过类全名获取字节码文件 Class clazz = Class.forName(servletClass); //7.创建实例对象 MyServlet1 my = (MyServlet1) clazz.newInstance(); //8.调用实例对象里面的方法 my.init(); my.service(); my.destory(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
web.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>MyServlet1</servlet-name> <servlet-class>cn.itheima.web.servlet1.MyServlet1</servlet-class> </servlet> <servlet-mapping> <servlet-name>MyServlet1</servlet-name> <url-pattern>/myServlet1</url-pattern> </servlet-mapping> <servlet> <servlet-name>MyServlet2</servlet-name> <servlet-class>cn.itheima.web.servlet1.MyServlet2</servlet-class> </servlet> <servlet-mapping> <servlet-name>MyServlet2</servlet-name> <url-pattern>/myServlet2</url-pattern> </servlet-mapping> </web-app>
接口
package cn.itheima.web.servlet1; public interface IMyServlet { public void init(); public void service(); public void destory(); }
实例化1
package cn.itheima.web.servlet1; public class MyServlet1 implements IMyServlet{ @Override public void init() { System.out.println("MyServlet1诞生了……"); } @Override public void service() { System.out.println("MyServlet1开始服务了……"); } @Override public void destory() { System.out.println("MyServlet1销毁了……"); } }
实例化2
package cn.itheima.web.servlet1; public class MyServlet2 implements IMyServlet{ @Override public void init() { System.out.println("MyServlet2诞生了……"); } @Override public void service() { System.out.println("MyServlet2开始服务了……"); } @Override public void destory() { System.out.println("MyServlet2销毁了……"); } }
运行效果
相关文章推荐
- Android-通过网络获取xml文件使用pull解析得到服务器中的信息(新闻客户端)
- 通过SaxReader解析xml配置文件(上班第一天)
- 利用jdom解析xml配置文件,并且按照xml格式输出,进行缩进
- 开发AP通过snmp获取CPE配置信息并保存到xml显示到web,遇到的问题总结
- 在Spring的XML文件中通过命名空间配置的标签是怎么解析的?
- 如何在android环境下进行ttf解析,通过获取文件头信息得到字体名称!
- 35-002-1 struts前期之 通过JAVA反射机制及XML配置文件解析自定义一个MVC的简单框架
- Dom4j解析XML来读取数据库配置文件信息
- JDBC 通过从properties配置文件获取信息得到orcale数据库接口
- Java如何从XML文件中获取节点信息的代码解析 Document方法
- 通过XmlNodeType.ProcessingInstruction属性获取到InfoPath XML文件头信息
- java代码里获取xml文件里的数据库配置信息
- Hibernate动态建表,通过hbm.xml配置文件创建数据表,进行数据库操作, 动态模型
- spring源码解析-从xml配置文件中获取bean
- 通过xml配置文件得到数据库信息
- Spring如何通过application.xml解析出bean的配置信息
- Dom解析是将xml文件全部载入,组装成一颗dom树,然后通过节点以及节点之间的关系来解析xml文件,下面结合这个xml文件来进行dom解析。
- 通过Spring工具类获取classpath下的文件资源,解析xml
- 通过xml的解析多数据源对文件进行导出成excel
- java通过解析文件获取apk版本等信息