No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Aprende todo un fin de semana sin pagar una suscripción 🔥

Aprende todo un fin de semana sin pagar una suscripción 🔥

Regístrate

Comienza en:

5D
2H
54M
35S

Anotaciones para indicar dependencias en Spring Boot

9/31
Recursos

Aportes 10

Preguntas 2

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

¿QUE ES UNA ANOTACION EN SPRING BOOT?

Una Anotación es una forma de añadir metadatos al código fuente Java que están disponibles para la aplicación en tiempo de ejecución o de compilación. Es una alternativa mas sencilla al uso de XML.


TIPOS DE ANOTACIONES


@Controller: Para indicar que esta será la clase que gestionara las peticiones del usuario por get, post, put, patch o delete.


@Service: Con esta notación especificamos que en esta clase se encontrara toda nuestra lógica de negocio, cálculos o llamadas a otras API externas.


@Repository: Se usa para las clases o interfaces que funcionaran con el acceso a la base de datos.


Si nuestra clase o interfaz no tiene una especificación clara como @Service, @Repository o @Controller, simplemente recurrimos a @Component y le indicamos que sencillamente es un componente.


Por otro lado, no es estrictamente necesario que cumplas con colocar una notación especifica, pero es una buena practica.

Anotaciones para indicar dependencias en Spring Boot

  • @Component: anotación genérica, de ella nacen las siguientes (@Controller, @Service y @Repository). Se usa cuando tenemos una clase abstracta.

  • @Controller: la usamos en las clases que se encargarán tanto de recibir las peticiones HTTP por parte de la parte frontal como devolver las respuestas de esas peticiones procesadas al frontal.

  • @Service: la usamos en las clases que implementamos la lógica de negocio, es decir, dónde realizamos las validaciones.

  • @Repository: la usamos en interfaces (no clases), donde nos ocuparemos de la obtención y persistencia de datos.

Por lo que, un resumen podría ser: se hace petición HTTP desde la parte frontal a nuestra aplicación, el @Controller correspondiente recibe esa petición y llama al @Service para que este realice las validaciones correspondientes y además, llame al @Repository si fuera necesario para persistir o recuperar datos, el @Service devuelve respuesta al @Controller y el @Controller devuelve respuesta al frontal.

Saludos, exelente curso, tengo algunas dudas, cual es la diferencia entre @component y @service ? No veo inplementaciones concretas que sean distintas, la diferencia seria solo semántica , es decir, con @service anotamos nuestras clases de negocio ?

me gustó esta clase

Las anotaciones en Spring Boot son una forma de agregar metadatos al código fuente Java que están disponibles en tiempo de ejecución o de compilación. Se utilizan como una alternativa más sencilla al uso de XML y existen diferentes tipos de anotaciones, como @Controller, @Service, @Repository y @Component, para indicar el propósito de una clase o interfaz. No es estrictamente necesario usar una anotación específica, pero es una buena práctica hacerlo.

Diferencias entre las anotaciones:
@Component
Es un bean que es reconocido por el componentScan de Spring para su inicialización.

Todas las demás son meta anotaciones de @Component, pero con algunas diferencias:
@Repository captura automáticamente las excepciones con la BD por medio de DataAccessExeption.
@Sevice Solo se nombra para separación de responsabilidades.
@Controller Igual que el anterior, pero además indica a spring que se trata de una clase que sirve métodos HTTP.

https://www.baeldung.com/spring-bean-annotations

  • @Component: es una anotación general, si tenemos una clase que consideramos que es muy abstracto, podemo anotarla con esta anotación
  • @Controller: es la anotación que deben llevar aquellas clases que van a manejar inputs provenientes del frontend
  • @Service: sirve para toda la lógica de negocio adicional de nuestro sistema
  • @Repository: se encarga de la capa de persistencia de datos

Es una mala práctica poner una anotación dentro de otra.

Para quienes no estamos familiarizado con las anotaciones nos hubiera gustado una breve introducción a ellas al inicio del video.

Si tienen problemas para inicializar su repositorio de git les recomiendo usar Eclipse como IDE es más amigable el proceso ya que es gráfico , si tienen dudas les comparto este link en donde explica a detalle como subir el proyecto a un repo en github saludos. https://www.arquitecturajava.com/eclipse-git-repositorios/