我是新來的春天,我想知道:@PostConstruct註釋和春天的生命週期
我有@Component(春季)註釋的Java類和裏面我有@PostConstruct註釋的方法。然後該類將由另一個類中的@Autowired註釋字段引用。我可以假設該類只在@PostConstruct被調用後才被注入?
@Component
class AuthenticationMetrics {
private static final MetricRegistry metrics = new MetricRegistry();
final Counter requestsTotal
final Meter guestLogins
final Meter kfUserLogins
final Timer guestLoginResponseTime
final Timer kfLoginResponseTime
@PostConstruct
public void populateMetricsRegistry() {
metrics.counter("authentication.requests.totals")
}
}
是宥可以假設它... Spring首先創建一個bean,然後檢查最終@PostConstruct註釋,最後注入豆。無論如何,我看到您在populateMetricsRegistry方法中使用了非彈簧對象。在這種情況下,對於這個對象(度量對象),你自己負責管理正確的生命週期 –
我對另一個class_很困惑。你的'AuthenticationMetrics'類將被實例化,它的字段將被注入(這個例子中沒有),然後'@ PostConstruct'將被調用。如果你在某處注入'AuthenticationMetrics',它將在_somewhere_的'@ PostConstrtuct'被調用之前被注入。 –