java - 将 bean 注入(inject)到 Spring 托管上下文之外的类中

标签 java spring

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

澄清:管理某些类 MyClass 的生命周期的同一应用程序也在管理 Spring 上下文的生命周期。 Spring对MyClass的实例一无所知,我想知道如何将实例提供给上下文,但无法在上下文本身中创建实例。

最佳答案

你可以这样做:

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

您可以在 YourClass 中使用 @Autowired 等来指定要注入(inject)的字段等。

关于java - 将 bean 注入(inject)到 Spring 托管上下文之外的类中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/310271/

相关文章:

java - 在 HP-UX 机器上忽略高于 32767 的 DB2 queryDataSize

java - Cassandra Java 日期问题

java - Spring JDBCTemplate + Postgres,同样的请求很慢

java - 使用 Spring CrudRepository 的 Hibernate LazyInitializationException

java - 使用干净的 URL 编写应用程序

java - 如何将 zip 文件读取为字节数组,然后将字节数组转换回 zip 文件?

java - Google Drive API Java 客户端库日志记录

java - Spring Data JPA中的查询语法问题

java - 使用 hibernate 将配方添加到表时的约束违规列表

java - Spring + Scala + 匿名 block 或类