Beans and Dependency Injection

En Spring Boot, podemos usar Spring Framework para definir nuestros beans y su inyección de dependencia. los@ComponentScan La anotación se usa para encontrar frijoles y el correspondiente inyectado con @Autowired anotación.

Si siguió el diseño típico de Spring Boot, no es necesario especificar ningún argumento para @ComponentScananotación. Todos los archivos de clases de componentes se registran automáticamente con Spring Beans.

El siguiente ejemplo proporciona una idea sobre el cableado automático del objeto Rest Template y la creación de un Bean para el mismo:

@Bean
public RestTemplate getRestTemplate() {
   return new RestTemplate();
}

El siguiente código muestra el código para el objeto Rest Template cableado automáticamente y el objeto de creación Bean en el archivo de clase principal de la aplicación Spring Boot:

package com.tutorialspoint.demo;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
import org.springframework.web.client.RestTemplate;

@SpringBootApplication
public class DemoApplication {
@Autowired
   RestTemplate restTemplate;
   
   public static void main(String[] args) {
      SpringApplication.run(DemoApplication.class, args);
   }
   @Bean
   public RestTemplate getRestTemplate() {
      return new RestTemplate();   
   }
}