写一个小小的框架来玩一玩:
package cn.mengmei.Framework;
public class Person {
public void run(){
System.out.println("run.........");
}
}
<?xml version="1.0" encoding="UTF-8"?>
<framework>
<class name="cn.mengmei.Framework.Person">
<method>run</method>
</class>
</framework>
package cn.mengmei.Framework;
import java.lang.reflect.Method;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class MyFramework {
public static void main(String[] args) throws Exception {
SAXReader reader = new SAXReader();
Document document = reader.read("src/config.xml");
Element root = document.getRootElement();
Element classNode = root.element("class");
String className = classNode.attributeValue("name");
String methodName = classNode.element("method").getText();
Class clazz = Class.forName(className);
Method method = clazz.getMethod(methodName, null);
method.invoke(clazz.newInstance(), null);
}
}