Que es Spring Boot

Spring Boot es un conjunto de componentes que te proveen las herramientas para crear servicios rápidamente y con un mínimo esfuerzo.
Utiliza configuraciones preestablecidas que te ahorran tiempo y repeticiones en el desarrollo de aplicaciones.
Además pone a tu disposición las librerías para la mayoría de las necesidades en la creación de servicios, micro servicios y aplicaciones Rest.

Sumado a esto te ordena la arquitectura de tu código dándote las bases iniciales para cada proyecto.

Spring Boot es parte de un conjunto de proyectos que forman parte del ecosistema de soluciones de Spring. Cada proyecto de Spring resuelve un problema en particular.

En este caso Spring Boot resuelve la creación de aplicaciones orientadas a producción, de ejecución rápida y escalable. Se integra de forma sencilla con otros proyectos de Spring como Spring Data, Spring Cloud, Spring Security, mediante interfaces comprensibles.

Puedes pegarle un vistazo en la página de Spring a los proyectos de Spring. Entre ellos vemos Spring Boot.

Cuáles son las características principales de Spring Boot:

  • Es liviano y con una arquitectura simple enfocada en la inyección de dependencias.
  • Te entrega las dependencias iniciales agrupadas y listas para su uso.
  • Configuraciones preestablecidas y automáticas que te ahorran esfuerzo en configuraciones repetitivas o engorrosas.
  • Acceso a librerías de terceros mediante interfaces para su uso.
  • Integrar Tomcat, Jetty o Undertow sin necesidad de estar desplegando archivos en los contenedores de aplicaciones.
  • Fácil de testear y con herramientas para el testing.
  • Simplifica notablemente la persistencia de datos y consultas sobre los datos.
  • Monitoreo de nuestra aplicación.
  • Está preparado para su funcionamiento en Cloud

Spring Boot trabaja con Inyección de dependencias (IoC):

Spring utiliza este patrón denominado Inversion of Control (IoC). La inversión de control e inyección es uno de los aspectos principales de Spring Framework.

Spring Boot siendo una capa por encima de Spring Framework obviamente utiliza este patrón para agregar a las partes de nuestro código las diferentes responsabilidades que necesita.

Este patrón refiere a que a una clase en particular se le suministran las subsecuentes clases que la primera necesita inyectándoselas para que las use.

Spring es el que maneja estas dependencias suministrándoselas a quien las necesite.

Spring Boot

Spring Boot dispone de dependencias inicializadoras o Started:

Las dependencias inicializadoras “started” de Spring Boot te proveen el conjunto de dependencias ya agrupadas y listas para su uso.

Todos los inicializadores “started” tienen la nomenclatura *spring-boot-starter- **

Por ejemplo el paquete de dependencias spring-boot-starter-web nos da las librerías para arrancar una aplicación web en un Tomcat, crear un controlador que reciba una petición y responder.

Otro ejemplo de un “started” es spring-boot-starter-data-jpa que nos da acceso a los datos de una Base de Datos.

Spring Boot entiende como usar estos “started” y crea su autoconfiguración por default.

Spring Boot

Spring Boot tiene un Servidor embebido:

Spring Boot también nos ayuda a los desarrolladores a crear aplicaciones que se ejecutan sin necesidad de pensar en el servidor de aplicaciones. Esto debido a que ya incluye el servidor de aplicaciones en su ejecución.

Lo podemos ver como la posibilidad de crear aplicaciones “auto ejecutables” con un solo comando.

Spring Boot

Spring Boot tiene Autoconfiguraciones:

Spring Boot nos proporciona configuraciones por default para nuestra aplicación. Lo que nos da tiempo para concentrarnos en resolver la funcionalidad desde el principio sin estar repitiendo configuraciones una y otra vez.

De este modo tu aplicación en Spring Boot decide la mejor configuración basándose en las dependencias que estes utilizando. Por ejemplo, si tienen una dependencia de alguna base de datos como MySQL o PostgreSql, Spring decidirá la configuración apropiada para ello. Si deseas agregar o modificar alguna configuración de forma personalizada, puedes hacerlo fácilmente modificando propiedades.

Spring Boot proporciona logs y monitoreo:

De forma standard Spring te da deja todo listo para registrar logs en tu aplicación y dejar registros que te ayudan a monitorear el estado y errores.

Que tipo de aplicaciones podemos desarrollar en Spring Boot

Con Spring Boot podemos crear micro-servicios empresariales que brinden el soporte a funcionalidades del negocio y provean el backend para aplicaciones web, móviles y procesamiento de datos contra base de datos. Aplicaciones pequeñas y grandes en entornos en la nube escalables.

Conclusión

Spring Boot es un marco de trabajo de Java que se utiliza para crear aplicaciones web de manera más fácil y rápida. Spring Boot incluye:

  • Configuración automática: Spring Boot se encarga de gran parte de la configuración y la integración de diferentes componentes, lo que ahorra tiempo y esfuerzo.
  • Fácil de usar: Spring Boot proporciona una gran cantidad de funcionalidades out-of-the-box, lo que permite que los desarrolladores se enfoquen en la escritura de código de negocios en lugar de en la configuración.
  • Escalabilidad: Spring Boot está diseñado para ser escalable, lo que significa que es fácil de mantener y ampliar a medida que crece la aplicación.
  • Integración con otros marcos: Spring Boot tiene una amplia integración con otros marcos de Java, lo que permite una fácil integración de diferentes herramientas y tecnologías.
Hi! If you find my posts helpful, please support me by inviting me for a coffee :)

Ver también