Aula 02 - Spring Boot: Primeiros Passos 🌱
Hoje vamos conhecer o framework que vamos usar durante todo o curso: o Spring Boot, a forma mais rápida e popular de criar aplicações Java para produção.
😊 O que é o Spring Boot?
O Spring é um framework enorme, com muitas configurações manuais. O Spring Boot simplifica isso drasticamente, fornecendo configurações padrão sensatas ("convention over configuration") para que você comece a codificar rapidamente, sem se perder em XML.
Principais Vantagens
- Servidor Embutido: Não precisa instalar um servidor separado — o Spring Boot já roda com Tomcat embutido.
- Starters: Dependências pré-configuradas (ex:
spring-boot-starter-webjá traz tudo para criar APIs REST). - Auto Configuration: O Spring detecta o que você precisa e configura automaticamente.
📊 Estrutura de um Projeto Spring Boot
graph TD
A[Projeto Spring Boot] --> B[Controller - Recebe requisições]
A --> C[Service - Regras de negócio]
A --> D[Repository - Acesso a dados]
A --> E[Model/Entity - Representação dos dados] 🧠 Criando um Projeto com o Spring Initializr
Important
O Spring Initializr é a ferramenta oficial para gerar a estrutura inicial de um projeto Spring Boot, escolhendo as dependências necessárias.
Ao gerar o projeto, escolha: * Project: Maven * Language: Java * Dependencies: Spring Web
💻 Rodando a Aplicação
$ ./mvnw spring-boot:run
$
$ . ____ _ __ _ _
$ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
$ ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
$ \\/ ___)| |_)| | | | | || (_| | ) ) ) )
$ ' |____| .__|_| |_|_| |_\__, | / / / /
$ =========|_|==============|___/=/_/_/_/
$ Started BackendApplication in 2.145 seconds
📝 Exercícios Progressivos
- Básico: O que significa "Convention over Configuration"?
- Básico: Para que serve um "Starter" no Spring Boot?
- Intermediário: Qual a vantagem de o Spring Boot já vir com um servidor embutido?
- Intermediário: O que é o Spring Initializr e para que serve?
- Desafio: Acesse o Spring Initializr e liste 5 dependências (starters) diferentes que você encontrou disponíveis.
🚀 Mini-projeto: Gere um novo projeto Spring Boot no Spring Initializr com a dependência Spring Web, importe no IntelliJ e rode a aplicação pela primeira vez.