Spring @Component & @Bean-annotation

Ich glaube @Configuration Anmerkung, wenn verwendet, in Verbindung mit @Bean annotation im Frühjahr verwendet wird, zu ersetzen, die xml-Konfiguration. Aber ich sah ein Stück code, wo @Bean wurde in Verbindung mit @Component (definiert auf Klassen-Ebene). Ist dies eine gültige Erklärung? Gibt es irgendwelche vor - /Nachteile bei der Verwendung @Component mit @Bean annotation vs mit @Configuration und @Bean.

EDIT:

Dank @Sundar & @Biju. Ich habe Programmaufruf zwischen 2 bean-Methoden in der Component-Klasse. Ich sah verschiedene Objekt-Werte. Aber wenn ich in der Konfiguration , ich sah den gleichen bean-Werte. Basierend auf dem, was Sie erklärt hatte , nehme ich einen normalen Methodenaufruf gemacht wurde, als ich verwendet @Component , in der Erwägung, dass, wenn ich @Configuration , ich nehme an der Methode annotiert mit @Bean behandelt wurde, als ein Spring-Bean

Code

@Component
public class AppConfig {

    @Bean(name="customerService")
    public CustomerService getCustomerService(){
        System.out.println(getService());
        System.out.println(getService());
        return getService();
    }

    @Bean
    public CustomerService getService(){
        return new CustomerServiceImpl();
    }
}

Die Ausgabe Der Konsole

com.company.service.CustomerServiceImpl@68bbe345
com.company.service.CustomerServiceImpl@30b8a058

Code

@Configuration
public class AppConfig {

    @Bean(name="customerService")
    public CustomerService getCustomerService(){
        System.out.println(getService());
        System.out.println(getService());
        return getService();
    }

    @Bean
    public CustomerService getService(){
        return new CustomerServiceImpl();
    }
}

Die Ausgabe Der Konsole

com.company.service.CustomerServiceImpl@71623278
com.company.service.CustomerServiceImpl@71623278
InformationsquelleAutor Punter Vicky | 2016-06-29
Schreibe einen Kommentar