应用反射时的一个小问题

springlie springlie 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
今天刚刚接触了一小点反射。有个小问题。请教大家。
daoClass = Class.forName(daoClassName);//这里是用反射获取一个类名,和它的一个方法
Class methodParameterTypes[] = new Class[1];
methodParameterTypes[0] = Integer.TYPE;
Method targetMethodInfo = daoClass.getMethod("findById", methodParameterTypes);

如上所述,用反射调用的是一个hibernate自动生成的DAO类的一个方法:
	public TblPotential findById(java.lang.Integer id) {
log.debug("getting TblPotential instance with id: " + id);
try {
TblPotential instance = (TblPotential) getSession().get(
"com.minicrm.hibernate.tables.TblPotential", id);
return instance;
} catch (RuntimeException re) {
log.error("get failed", re);
throw re;
}
}


结果测试时说找不到这个方法。后来我发觉DAO类中findById()的参数是一个Interger,而通过反射调用的方法findById()的参数是int,所以导致无法找到。
后来我在DAO类中又加了一个方法:
	public TblPotential findById(int id){
return findById(id);
}

测试通过。

问题是:我现在不想改动DAO类,请问在反射那里的语句通过怎样可以找到findById(java.lang.Integer id)方法?
...全文

相关推荐

详解Java 反射和反射的应用场景

主要介绍了Java 反射和反射的应用场景的相关资料,帮助大家更好的理解和学习Java反射的相关知识,感兴趣的朋友可以了解下

weixin_38665162

Java反射学习和反射的应用场景干货都在这里

文章目录一、Java反射定义二、Java反射机制实现1、Class对象获取2、获取class对象的摘要信息3、获取class对象的属性、方法、构造函数等三、反射的应用场景1、动态代理2、自定义注解实现日志管理 写在前面:Java反射是我们做项目中必备的技能,本篇文章将重新学习反射的基本用法、反射的应用场景等。 一、Java反射定义 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法;这种动态获取的以及动态调用对象的方法的功能称为Java的反射机制 二、Java反射机制实现 1、Class对象获取 在一个JVM中,一种

weixin_38682161

Java反射在实际工作中的应用笔记

主要介绍了Java反射在实际工作中的应用笔记,具有一定借鉴价值,需要的朋友可以参考下。

weixin_38612139

C#反射及元数据性能问题

C#反射及元数据性能问题

lxllb8

java反射机制应用

java反射机制应用,文档中列举了使用java反射机制的各个应用场景,加以代码实例,使用学习非常方便。

myjava20112011
评论 4
收藏 已收藏
分享
返回顶部
springlie
Java EE 67,535 成员 225,843 内容