java - 有没有办法将 @Autowired 变量传递给 Spring Boot 应用程序中的其他类?

标签 java spring spring-boot autowired

在我的 Spring Boot 应用程序中,我有 A 类。在该类中,我使用 @Autowired 注释声明了我的 DAO 层变量。我有一个单独的 Java 库,其中包含类 B(它有一个接受泛型参数的方法)。我想将 A 类中的 @Autowired 变量作为参数发送到 B 类的方法,并在 B 类的方法中对该变量执行一些操作。

有什么办法可以实现这一点吗?第二类会知道上下文吗?

最佳答案

Will the second class be aware of the context?

我认为,第二类你指的是 B 类。B 类不需要了解上下文。它所关心的是,它需要一个 DAO 层的非 null 对象作为方法参数。

所以,问题是,你在什么时候尝试调用类 B 中的方法。如果你在 spring 完成它的部分之前调用它,那么你将得到的只是 null。尝试从 @PostConstruct 带注释的方法调用 ClassB.method(),看看是否仍然获得 DAO 成员变量的 null 引用。如果是这种情况,请查看您的 spring bean 实例化。

关于java - 有没有办法将 @Autowired 变量传递给 Spring Boot 应用程序中的其他类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59559302/

相关文章:

java - 未调用 Onsavedinstancestate 时写入 outState

java - 发送Json数据到Spring Controller

spring - 不允许 HTTP 405 - Spring Boot + Spring Security

java - 如何按添加值的时间对TreeSet进行排序?

java - 如何将工具提示添加到 JavaFX 8 中的 TableView 标题单元格

java - 如何在 Spring Data Neo4J 3.0.0(发布版)中向节点添加第二个标签?

java - Spring MVC 3.0 访问 session 变量

angularjs - 预检响应具有无效的 HTTP 状态代码 403

java - OneToMany 将 POJO 映射到 JSON Spring

java - Spring Java 包中的实体列表