这样的set方法能调到吗

moodoasis 2008-05-20 04:40:15
我怎样才能调到MainBean的set方法呢,只利用Class beanClassName = Class.forName(bean); Class refClassName = Class.forName(ref);

[code=Java]package spring;
import java.util.HashMap;
import java.util.Map;
public class Container {
public static Map map=new HashMap();
private static String bean;
private static String ref;
public Container(){
bean = "spring.MainBean";
ref = "spring.Love";
}
public static Object load(String className) {
Object obj = null;
try {
Class beanClassName = Class.forName(bean);
Class refClassName = Class.forName(ref);

//MainBean的内容 public class MainBean {
// private LoveInterFace loveInterFace = null;
// public void love(){
// loveInterFace.doSth();
// }
// public void setLoveInterFace(LoveInterFace loveInterFace) {
// this.loveInterFace = loveInterFace;
// }
} catch (Exception ex) {
ex.printStackTrace();
}
return obj;
}
}
code]


...全文
111 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
moodoasis 2008-05-21
  • 打赏
  • 举报
回复
谢谢,我努力一下
lovingprince 2008-05-21
  • 打赏
  • 举报
回复
只是提供一种思路给你,要依赖注入也可以啊,实现复杂一点而已,原理也很简单就是反射
moodoasis 2008-05-21
  • 打赏
  • 举报
回复
楼上的前辈的意思太抽象了,如果2楼的"setLoveInterFace",能软一点点,就好了
M_song 2008-05-21
  • 打赏
  • 举报
回复
依赖注入并不重要,重要的是DIP(依赖倒转原则),即高层不依赖于低层,依赖于抽象;类不依赖于实现,应该依赖于抽象.
一般依赖注入需要框架的支持!
M_song 2008-05-21
  • 打赏
  • 举报
回复
引用 2 楼 lovingprince 的回复:
Method m=beanClassName.getMethod("setLoveInterFace",LoveInterFace.class)
MainBean mainBean =(MainBean )beanClassName.newInstance();
m.invoke(mainBean, LoveInterFace类型参数);


支持............
moodoasis 2008-05-21
  • 打赏
  • 举报
回复
我想问问,在SPRING以外的情况下,怎么用依赖注入,机制呢,他不已经是一种编程原则了吗
moodoasis 2008-05-21
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 lovingprince 的回复:]
Method m=beanClassName.getMethod("setLoveInterFace",LoveInterFace.class)
MainBean mainBean =(MainBean )beanClassName.newInstance();
m.invoke(mainBean, LoveInterFace类型参数);

[/Quote]

beanClassName.getMethod("setLoveInterFace",LoveInterFace.class) 里的"setLoveInterFace"能软一点吗,谢谢
Shine_Panda 2008-05-20
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 lovingprince 的回复:]
Method m=beanClassName.getMethod("setLoveInterFace",LoveInterFace.class)
MainBean mainBean =(MainBean )beanClassName.newInstance();
m.invoke(mainBean, LoveInterFace类型参数);

[/Quote]
支持............
gj_wrxz 2008-05-20
  • 打赏
  • 举报
回复
继承一下,然后再super.set``````
lovingprince 2008-05-20
  • 打赏
  • 举报
回复
Method m=beanClassName.getMethod("setLoveInterFace",LoveInterFace.class)
MainBean mainBean =(MainBean )beanClassName.newInstance();
m.invoke(mainBean, LoveInterFace类型参数);
moodoasis 2008-05-20
  • 打赏
  • 举报
回复
顶一下

67,537

社区成员

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

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