当前位置: 首页 > 面试题库 >

将bean注入Spring托管上下文之外的类中

夏侯昊明
2023-03-14
问题内容

我是公司产品之一的最终用户。它不太适合集成到Spring中,但是我能够获取上下文的句柄并按名称检索所需的bean。但是,我仍然想知道是否可以将bean注入到此类中,即使该类不是由Spring本身管理的。

说明:管理某个类MyClass的生命周期的同一应用程序也正在管理Spring上下文的生命周期。Spring没有MyClass实例的知识,我想了解如何将实例提供给上下文,但是不能在上下文本身中创建实例。


问题答案:

你可以这样做:

ApplicationContext ctx = ...
YourClass someBeanNotCreatedBySpring = ...
ctx.getAutowireCapableBeanFactory().autowireBeanProperties(
    someBeanNotCreatedBySpring,
    AutowireCapableBeanFactory.AUTOWIRE_AUTODETECT, true);

你可以在其中使用@Autowired等等YourClass来指定要注入的字段等。



 类似资料:
  • 问题内容: 我是公司产品之一的最终用户。它不太适合集成到Spring中,但是我能够获取上下文的句柄并按名称检索所需的bean。但是,我仍然想知道是否可以将bean注入到此类中,即使该类不是由Spring本身管理的。 说明:管理某个类MyClass的生命周期的同一应用程序也正在管理Spring上下文的生命周期。Spring没有MyClass实例的知识,我想了解如何将实例提供给上下文,但是不能在上下文

  • 我在演示应用程序中使用了JSF2+Spring3.1+Hibernate4,我想使用注释来创建会话工厂,但是我的DAO类没有在Jsf托管Bea类中初始化,所以我得到了空指针异常。我的ApplicationContext.xml 现在,在Managedbean方法中,DAO对象为null,我得到的是null指针异常

  • 主要内容:实例,运行测试结果以下代码显示了如何进行bean注入。 我们先定义一个消息bean,它有一个字符串属性来存储消息。 然后我们再定义另一个托管bean,并使用注解注入。 实例 打开 NetBean8.2,创建一个名为: InjectManagedBeans 的工程,并加入以下文件代码。 以下是文件:UserBean.java 中的代码 - 以下是是文件:index.xhtml 中的代码 - 以下是文件:Message

  • 我希望能够通过辅助注入创建的对象来发现/注入创建对象的方法的名称。 我想做的一个例子: 不幸的是,到目前为止,我想到的实现这一点的唯一方法是 扩展辅助注射(通过复制和粘贴)以添加我的功能 写一些与辅助注射非常相似的东西,为我做这件事 写很多样板,在没有guices帮助的情况下做到这一点 我正在寻找一个解决方案,大致如下: < li >实现这一点的一些guice配置或模式 < li >实现此功能的一

  • 问题内容: 我在演示应用程序中使用JSF2 + Spring3.1 + Hibernate4,我将要使用批注创建会话工厂,但我的DAO类未在Jsf Managed Bea类中初始化,因此我得到了Null指针异常。我的 applicationContext.xml UserDAO.java类 和我的ManagedBean类 现在在Managedbean方法中,DAO对象为null,并且我得到了Nul

  • 我的问题与注入EntityManager时的WELD-001408未满足依赖项和WELD-001408未满足依赖项不同。虽然这些问题涉及尝试将托管bean注入到无状态EJB中,但我正尝试进行相反的操作。 当我试图将一个@Stateless@Local interfaced bean注入到一个web托管bean中时,我得到了一个“未满足的依赖项”。我正在用各种EJB模块和web模块构建一个EAR,在