Curso de Spring Boot

En este capítulo entenderemos qué es Spring Boot, por qué existe y para qué se utiliza.

Intentaremos explicarlo de forma muy clara antes de empezar a programar.


1.1 Qué es Spring Framework

Spring es un framework de Java que sirve para construir aplicaciones.

Un framework es un conjunto de herramientas que facilita el desarrollo de software.

Spring se usa principalmente para crear:

  • aplicaciones web
  • APIs
  • microservicios
  • aplicaciones empresariales

Spring nació en 2002 para solucionar problemas de Java empresarial (J2EE).


Problema que había antes

Antes de Spring, crear aplicaciones Java grandes era muy complicado.

Había que configurar muchas cosas manualmente:

  • servidores
  • bases de datos
  • objetos
  • dependencias
  • seguridad

El código se volvía muy complejo.

Ejemplo típico antiguo:

1UserService userService = new UserService(new UserRepository(new DatabaseConnection()));

Aquí el programador tiene que crear todo manualmente.


Qué propone Spring

Spring introduce un concepto clave:

Inversión de Control (IoC)

Esto significa que Spring se encarga de crear los objetos por nosotros.

Ejemplo con Spring:

1@Service
2public class UserService {
3
4    private final UserRepository repository;
5
6    public UserService(UserRepository repository) {
7        this.repository = repository;
8    }
9
10}

Spring automáticamente:

  • crea UserRepository
  • lo inyecta en UserService

El programador no tiene que hacerlo manualmente.


1.2 Qué es Spring Boot

Spring Boot es una herramienta que simplifica el uso de Spring.

Spring tradicional requiere mucha configuración.

Spring Boot elimina casi toda esa configuración.


Sin Spring Boot

Había que configurar:

  • servidor web
  • dependencias
  • configuración XML
  • configuración de base de datos
  • configuración de seguridad

Esto podía llevar mucho tiempo.


Con Spring Boot

Con Spring Boot puedes crear una aplicación completa con muy poco código.

Ejemplo de aplicación mínima:

1@SpringBootApplication
2public class Application {
3
4    public static void main(String[] args) {
5        SpringApplication.run(Application.class, args);
6    }
7
8}

Eso es suficiente para arrancar una aplicación Spring Boot.


1.3 Qué hace Spring Boot automáticamente

Spring Boot configura muchas cosas por ti.

Por ejemplo:

  • servidor web
  • JSON
  • APIs REST
  • conexión con base de datos
  • seguridad básica
  • logs

Esto se llama:

Auto Configuration


Ejemplo

Si añades esta dependencia:

1spring-boot-starter-web

Spring Boot automáticamente configura:

  • Tomcat (servidor web)
  • Jackson (JSON)
  • Spring MVC
  • REST controllers

No tienes que configurar nada.


1.4 Qué aplicaciones se pueden crear con Spring Boot

Spring Boot se usa muchísimo en empresas.

Se utiliza para crear:

APIs REST

Ejemplo:

GET /users
POST /users
DELETE /users

Aplicaciones web

Aplicaciones completas con:

  • backend Java
  • frontend Angular / React

Microservicios

Muchas empresas usan arquitectura de microservicios.

Cada servicio es una aplicación Spring Boot.

Ejemplo:

Servicio usuarios
Servicio pagos
Servicio pedidos
Servicio notificaciones

Sistemas empresariales

Spring Boot se usa en:

  • bancos
  • aerolíneas
  • comercio electrónico
  • sistemas médicos
  • sistemas educativos

1.5 Por qué Spring Boot es tan popular

Spring Boot se ha convertido en el framework más usado de Java.

Las razones son:

1. Es muy rápido de desarrollar

Antes:

configuración complicada

Ahora:

crear proyecto → programar → listo

2. Tiene un ecosistema enorme

Spring incluye muchos módulos:

  • Spring Boot
  • Spring Security
  • Spring Data
  • Spring Cloud
  • Spring Batch
  • Spring AI

3. Funciona muy bien con bases de datos

Spring Boot se integra fácilmente con:

  • PostgreSQL
  • MySQL
  • MongoDB
  • Oracle
  • SQL Server

4. Es ideal para APIs

Crear APIs REST es muy sencillo.

Ejemplo:

1@RestController
2public class HelloController {
3
4    @GetMapping("/hello")
5    public String hello() {
6        return "Hola mundo";
7    }
8
9}

Si ejecutamos la aplicación:

http://localhost:8080/hello

Respuesta:

Hola mundo

1.6 Qué versiones se usan hoy

Hoy en día se utiliza:

Spring Boot 3

Características:

  • Java 17+
  • Jakarta EE
  • mejor rendimiento
  • soporte nativo para contenedores
  • arquitectura moderna

1.7 Qué aprenderemos en este curso

En este curso aprenderás a construir aplicaciones completas con Spring Boot.

Aprenderemos:

  • crear APIs REST
  • conectar bases de datos
  • usar SQL y JPA
  • manejar errores
  • seguridad con JWT
  • testing
  • despliegue en producción

Al final construiremos un proyecto real completo.


  • Loading...