配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<classes>
<class>
<className>cn.itcast.xml.parser.example1.Person</className>
<methodName>jump</methodName>
<param>
<paramType>java.lang.String</paramType>
<paramValue>marry</paramValue>
</param>
</class>
</classes>
通过配置文件反射出实际类:
package cn.itcast.xml.parser.example1;
import java.io.File;
import java.lang.reflect.Method;
import org.dom4j.Document;
import org.dom4j.io.SAXReader;
public class Demo1 {
public static void main(String[] args) throws Exception {
SAXReader reader = new SAXReader();
Document document = reader.read(new File("src/cn/itcast/xml/parser/example1/config.xml"));
String className = document.selectSingleNode("//className").getText();//反射类名
String methodName = document.selectSingleNode("//methodName").getText();//反射方法名
String paramType = document.selectSingleNode("//paramType").getText();//反射参数类型
String paramValue = document.selectSingleNode("//paramValue").getText();//反射参数值
Class clazz = Class.forName(className);
Method method = clazz.getMethod(methodName,Class.forName(paramType));
method.invoke(clazz.newInstance(),paramValue);
}
}
分享到:
相关推荐
最近在做数据采集,采集内容总是变来变去,于是考虑通过XML配置,采用反射原理动态加载窗体控件,采集内容也随之变成动态的
springboot开发myeclipse根据数据库表反射生成包类的xml配置文件
利用.NET反射机制,只要程序实现了预定的接口,就可以被主程序实例化,并调用显示方法将其显示而不需要知道其类名。支持XML格式的配置文件。
DWR.xml配置文件说明书 1、 建立dwr.xml 配置文件 任何一个dwr.xml的文件都需要包含DWR DOCTYPE的声明行,格式如下: <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN" ...
桌面程序通过xml配置文件找到相应的类 运用反射技术平执行它
这个程序集中的知识:通过解析配置文件获得与数据库的链接,同时解析xml映射数据库表,其中还运用到了反射机制,同时通过已经映射的数据库表来达到对数据库的各种操作。
本文主要介绍了java使用dom4j读取配置文件实现抽象工厂和反射的示例,在Java中也可以同Donet一样,将差异配置在配置文件里面。另外,我们采用下面的方式实现,将会更加便捷
利用libxml库、C++11、反射机制实现配置文件的存储。类似于C#、JAVA等语言,只需要定义一个子类,将需要保存的变量放在子类中并在构造函数中push_back到基类。需要使用的时候只需要Load一下便可以把数据还原回子类的...
由于ini原生不支持树结构,需要根据需要将父节点的option作为子节点的section,配置文件可读性变差。xml由于属性和元素分开的形式,不适合直接转为c++定义的树状结构。所以最终选择了json。 要想用c++实现一个通用...
Unity3D_XMLToEgg 基于C#编写的Unity3D工具,利用反射和泛型通过读取XML文件创建新的实例并且为实例赋值。 但是我更喜欢Unity3D_XML2O这个名字,O意味着object也象征着鸡蛋。 XMLToEgg or called XML2O can convert ...
XSS防御-使用AntiSamy配置文件。 AntiSamy是OWASP的一个开源项目,通过对用户输入的 HTML / CSS / JavaScript 等内容进行检验和清理,确保输入符合应用规范。AntiSamy被广泛应用于Web服务对存储型和反射型XSS的防御...
3.1 应用场景 在一些开源框架里,如Spring,Struts,Hibernate,MyBatis等,应用程序会提供一个配置文件如xml文件或者properties,然后在Java类里面解析xml或properties里面的内容,得到一个字符串,然后用反射机制...
通过构造器获取配置文件 * 2.通过dom4j解析配置文件,得到list集合(存放Bean标签的id和class属性) * 3.通过反射实例化得到对应的实例化对象,放置在map中(map是键值对,可根据id获取值)(遍历list获取对应的...
用抽象工厂做的程序,里面用到了简单的抽象类模式,做了一个工厂模式开发的c++版本程序!
使用反射动态加载第三方类 用反射加载第三方类用处在于: 使用XML或其他配文件配置要加载的类,从而和系统源代码分离。 对加载的类进行类检查,是加载的类符合... private $configData = array( #模拟xml配置,动态配置
基于反射原理实现一个基础的spring ioc框架,通过xml文件输入配置信息
jumeIOC 基于xml配置的IOC容器、对对象进行统一管理。 自己写IOC容器、不是闲着没事、而是深入理解IOC容器的实现方式、用到的技术点 dom4j解析xml文件、利用反射机制创建对象、使用Map集合作为容器、xml中配置的id ...
众所周知,C++不支持反射,这让热衷C++的伙伴们难免有些失意,在需要用到反射的...该源码项目通过运用函数指针,tinyxml,哈希map等技术,实现了在配置文件xml中自由切换类名,程序运行时动态创建相应类对象的功能。
WebConfig Web.Config配置类 ---------------- 公历/农历类 日期格式处理类 文件实用类 上传类 图片处理类 授权类 链接辅助类 分页类 反射辅助类 浏览器辅助类 序列化功能辅助类 Session封装 Smtp邮件辅助类 字符...
用标准XML配置文件来控制转发流程,支持国际化(有国际化标签),支持声明式异常处理,框架中用到多种设计模式(单例模式、抽象工厂模式、代理模式、门面模式等等)。基本控制流程类似Struts,但业务控制类(Action)不...