是否有可能在Spring Boot中自動裝入標記爲@ManagedResource的對象。我試圖這樣做,但對象是null。Spring Boot autowire @ManagedResource
例如:
@Component
@ManagedResource(objectName = MyMBean.MBEAN_NAME)
public class MyMBeanImpl implements MyMBean {
private String attribute;
@Override
@ManagedAttribute(description="some attribute")
public void setAttribute(String attribute) {
this.attribute = attribute;
}
}
春天創造適當的MBean。但是,當我嘗試自動裝配這個對象來使用它的屬性我得到空:
@Component
public final class Consumer {
@Autowired
MyMBean mBean; // is null
...
}
**修正**。問題根本不在'@ ManagedResource'中。問題出現在_field注射中。 _Constructor injection_解決了我的問題。欲瞭解更多信息,請參閱[https://stackoverflow.com/questions/39890849/what-exactly-is-field-injection-and-how-to-avoid-it](https://stackoverflow.com/questions/39890849/什麼,確切的是現場注入和如何避免,它) – piphonom
本文可以澄清一些觀點:[http://www.baeldung.com/running-setup-logic-on-startup-in -spring](http://www.baeldung.com/running-setup-logic-on-startup-in-spring) – piphonom