当前位置:编程学习 > JAVA >>

关于Spring依赖注入的问题,求各位大神解答。

A.java 类有3个方法,getM1,getM2,getM3
A 已经过注解的方式,依赖了数据读取类 B.java,A类只是操作业务逻辑。

现情况如下,在类 C.java中,我需要根据字符串type来判断,我需要调用A的哪个方法,type与方法的关系管理,存放在配置文件,格式如下:

type.value.1 = getM1
type.value.2 = getM2
type.value.3 = getM3

现在的问题是,我在C类已用ApplicationContext抽取出A类,但我无法根据方法名称(字符串)获取对应的方法,本来可以基于Method方法,对B类进行映射,但交给Spring管理以后,貌似不行了,因为A类依赖了B类,而采用Method 的 invoke 映射A类的方法后,就找不到B类了。错误日志如下:

Exception in thread "main" java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.test.C.main(C.java:27)
Caused by: java.lang.NullPointerException
at com.service.B.getM1(B.java:38)
at com.service.B$$EnhancerByCGLIB$$3d0c5846.getM1(<generated>)
... 5 more --------------------编程问答-------------------- 你现在,不要管3个,先用排除法,把其中一个 --------------------编程问答-------------------- 应该是要3个的了,问题是,在ApplicationContext里抽取了Bean,怎样根据字符串的形式,把Bean的方法抽取出来。。 --------------------编程问答-------------------- 虽然比较恶心,但好像这个方法是可行的。。。

http://forum.springsource.org/showthread.php?61997-How-to-invoke-method-dynamically-on-an-instance-managed-by-Spring-Container --------------------编程问答-------------------- 楼主 问下
http://bbs.csdn.net/topics/350162726
这个问题 你是怎么解决的
补充:Java ,  Web 开发
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,