java如何实现动态可变执行某一个类的方法,从数据库查出类和方法 然后执行

土匪八号 2012-04-23 11:38:23
现在我主要实现的效果是,通过设置也个参数,根据不同的参数查出数据库中对应的类及方法,然后跳转到该方法中执行
在前调用方法时直接new你个对象就可以调用,但因为现在类是可变的,不知道怎么跳转到特定的方法中。
...全文
207 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
cseu 2012-04-23
  • 打赏
  • 举报
回复
java 反射
土匪八号 2012-04-23
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

就是这种效果 多谢 利用发射调用,给你写了个例子,理解一下吧
Java code

public class Test {

public static void main(String[] args) throws Exception{
//1.需要提供class的name
//2.需要提供方法名称
//3.需要提供方法参数类型;
//4……
[/Quote]
ss36290109 2012-04-23
  • 打赏
  • 举报
回复
反射。
安特矮油 2012-04-23
  • 打赏
  • 举报
回复
利用发射调用,给你写了个例子,理解一下吧

public class Test {

public static void main(String[] args) throws Exception{
//1.需要提供class的name
//2.需要提供方法名称
//3.需要提供方法参数类型;
//4.参数值

//如果使用下面的这种需要提供无参构造
String className = "com.test.T";
String paramClass = "java.lang.String";
String methodName = "say";
String paramValue = "jack";

Class<?> c = Class.forName(className);
Object obj = c.newInstance();
Method method = c.getDeclaredMethod(methodName, new Class[]{Class.forName(paramClass)});
method.invoke(obj, new Object[]{paramValue});
}
}

class T{
public void say(String name){
System.out.println("hello " + name);
}
}

67,515

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧