Ich bin ziemlich neu in Spring Boot Application. Ich wollte verstehen, wie eine Spring-Boot-Anwendung Beans ohne @Configuration-Klasse erstellt. Ich habe mir ein Beispielprojekt angesehen, in dem weder @Bean-Definitionen noch ein Komponenten-Scan vorhanden waren. @Autowired lieferte die Abhängigkeit zur Klasse. Bitte werfen Sie einen Blick auf den folgenden Ausschnitt:
%Vor%Mein begrenztes Wissen über Federn sagt mir, dass, wenn es eine @ Service Annotation über eine Klasse gibt, irgendwo ein @ComponentScan vorhanden sein muss, um die Bean zu erstellen. Aber ohne einen Komponentenscan, wie wird die Bean CertificationServiceImpl erstellt und wie funktioniert das Autowirting von CertificationService in RestController hier?
Wie sagte in der Dokumentation:
... Die
@SpringBootApplication
-Anmerkung entspricht der Verwendung@Configuration
,@EnableAutoConfiguration
und@ComponentScan
...
Nehmen wir an, Sie haben eine Spring Boot App-Klasse wie etwa:
%Vor% Dann werden alle Pakete unterhalb des Pakets com.mypackage
standardmäßig für Spring-Komponenten gescannt. Übrigens können Sie Pakete angeben, die direkt in @SpringBootApplication
annotation ohne Verwendung von @ComponentScan
gescannt werden sollen. Weitere Details hier .
Tags und Links java spring spring-boot