Anotaciones importantes de Spring Framework – Spring Boot

En este post veremos algunas anotaciones importantes que se usan en Spring Boot.

Anotación: @Bean

paquete: org.springframework.context.annotation

Uso: Indica que un método genera un Bean para ser administrado por el contenedor de Spring Framework.

@Bean public MyBean myBean (){ return new MyBean();}

Anotación: @Component

paquete: org.springframework.stereotype

Uso: Indica que la clase es un componente y es candidato a la auto detección.

@Component public class MyComponente{}

Anotación: @Service

paquete: org.springframework.stereotype

Uso: Indica que la clase es un servicio. Es una especialización de @Component.

@Service("serviceImpl") public class ServiceImpl implements IServicio{}

Anotación: @Autowired

paquete: org.springframework.beans.factory.annotation

Uso: Nos ayuda a inyectar dependencia. Se puede usar en un campo, en un método setter y/o en un constructor.

@Autowired private MyServicio myServicio;

Anotación: @Qualifier

paquete: org.springframework.beans.factory.annotation

Uso: Se puede utilizar en un campo o parámetro como calificador para los beans candidatos cuando se realiza el cableado automático. También se puede utilizar para anotar otras anotaciones personalizadas que, a su vez, se pueden utilizar como calificadores.

@Qualifier("myServiceImpl") private MyService myServiceImpl;

Anotación: @Value

paquete: org.springframework.beans.factory.annotation

Uso: utilizado en el nivel de parámetro de campo o método / constructor que indica una expresión de valor predeterminado para el elemento anotado.

@Value("${mensaje}") private String mensaje;
@Value("33") private int edad;

Anotación: @Repository

paquete: org.springframework.data.repository

Uso: Provee métodos CRUD.

@Repository public interface MensajesRepository extends Repository {}

Anotación: @Controller

paquete: org.springframework.stereotype

Uso: Indica que una clase es un controlador.

@Controller public class Controlador{}

Por el momento es todo. Faltan ver las anotaciones @RequestMapping, @GetMapping, etc.

Links:

https://start.spring.io/

Published by Ariel Cupertino

I'm a computing engineer. I like to program in different programming languages. Mainly in Java and Python.

Leave a comment