假设我们有一个课程:
public class MyClass {
@Autowired private AnotherBean anotherBean;
}
然后,我们创建了此类的对象(或者其他一些框架也创建了此类的实例)。
MyClass obj = new MyClass();
是否仍然可以注入依赖项?就像是:
applicationContext.injectDependencies(obj);
(我认为Google Guice有这样的内容)
你可以使用的autowireBean()
方法执行此操作AutowireCapableBeanFactory
。你将其传递给一个任意对象,Spring会像对待它自己创建的对象一样对待它,并将应用各种自动装配的片段。
要掌握AutowireCapableBeanFactory
,只需自动连线即可:
private @Autowired AutowireCapableBeanFactory beanFactory;
public void doStuff() {
MyBean obj = new MyBean();
beanFactory.autowireBean(obj);
// obj will now have its dependencies autowired.
}
问题内容: 假设我们有一个课程: 然后,我们创建了此类的对象(或者其他一些框架也创建了此类的实例)。 是否仍然可以注入依赖项?就像是: 问题答案: 你可以使用的方法执行此操作。你将其传递给一个任意对象,Spring会像对待它自己创建的对象一样对待它,并将应用各种自动装配的片段。 要掌握,只需自动连线即可:
问题内容: 我需要使用spring框架在抽象超类中注入依赖项。 我每次实例化Abstract class B时都需要传递超类依赖关系(可以在我的项目中以100多种方式将其子类化) application.xml(Spring上下文文件)中的条目 我如何才能在application.xml中创建超类AbstractClassB的bean引用,以便可以在所有子类bean创建中使用它? 问题答案: 你可
问题内容: 我想将依赖项注入。但是,我的方法不起作用。我可以看到Spring正在调用我的setter方法,但是稍后在调用when时,该属性为。 这是我的设置: ServletContextListener: web.xml :(这是文件中的最后一个侦听器) applicationContext.xml: 输出: 实现此目的的正确方法是什么? 问题答案: 我通过删除侦听器bean并为我的属性创建了一
问题内容: 如何在不使用调用的情况下使用Spring将依赖项注入? 问题答案: 由于Servlet 3.0 ServletContext具有“ addListener”方法,因此可以通过如下代码添加而不是在web.xml文件中添加侦听器: 这意味着你可以正常地注入“ MyHttpSessionListener”中,并且,只要你的应用程序上下文中存在bean,就会使侦听器注册到容器中
我试图使用jackson ObjectMapper将对象转换为一个具体的类,并在转换后注入依赖项。以下是一个例子: 尝试反序列化对象后(值为包含参数的映射): - 我可以从上下文中获取服务并通过默认构造函数注入它吗?
问题内容: 我试图将Spring依赖项注入到JPA EntityListener中。这是我的侦听器类: 这是我的Entity类: 但是,我的依赖项(即)始终为null。 问题答案: 注入对无状态bean的依赖关系的一种方法是将依赖关系定义为“静态”,创建一个setter方法,以便Spring可以注入依赖关系(将其分配给静态依赖关系)。 将依赖项声明为静态。 创建一个方法,以便Spring可以注入它