我正在学习 Java 的 Spring 框架。这都是关于依赖注入(inject)的。是否有博客或一些资源或示例可以用来理解 RAW 依赖注入(inject)?换句话说,没有注释或 xml 或任何容器。纯 Java 代码中的依赖注入(inject)是什么样的?
提前致谢!
最佳答案
它看起来像这样(假设所有 bean 都是原型(prototype)作用域):
class BeanToBeInjected {
}
class BeanThatNeedsInjection {
BeanToBeInjected beanToBeInjected;
public void setBeanToBeInjected(BeanToBeInjected beanToBeInjected) {
this.beanToBeInjected = beanToBeInjected;
}
}
class BeanFactory {
public Object createBean(String id) {
if("beanThatNeedsInjection".equals(id) {
BeanThatNeedsInjection beanThatNeedsInjection = new BeanThatNeedsInjection();
beanThatNeedsInjection.setBeanToBeInjected(new BeanToBeInjected());
return beanThatNeedsInjection;
}
return null;
}
}
class MyService {
public void service() {
BeanThatNeedsInjection beanThatNeedsInjection =
new BeanFactory().createBean("beanThatNeedsInjection");
}
}
当然,通过反射和其他库(如 cglib)进行增强以动态创建代理类。
关于java - 在不依赖框架的情况下理解 java 中的依赖注入(inject)。它在纯 Java 代码中是什么样子的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23599116/