07‐Spring Boot Starters & Parent - JulianeMaran32/Java-with-Spring-Boot GitHub Wiki

14. Spring Boot Starters

Os Spring Boot Starters são pacotes de dependências pré configuradas que facilitam o desenvolvimento com Spring Boot. Eles ajudam a evitar que os desenvolvedores tenham que procurar e adicionar cada dependência manualmente no projeto.

Problema:

Ao iniciar um projeto Spring tradicional, é necessário incluir várias dependências no arquivo pom.xml do Maven. Isso pode ser trabalhoso, pois é preciso garantir que todas as versões sejam compatíveis.

Solução:

Os Spring Boot Starters resolvem esse problema, agrupando dependências essenciais de forma organizada e compatível. Com um único Starter, você adiciona todas as bibliotecas necessárias para uma funcionalidade específica.

Por exemplo, ao desenvolver uma aplicação web com Spring MVC, normalmente precisaríamos adicionar manualmente:

  • Spring MVC
  • Hibernate Validator
  • Jackson (para JSON)
  • Tomcat (servidor embutido)

Com o Spring Boot Starter Web, basta adicionar esta única dependência no pom.xml:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>

Isso automaticamente inclui todas as bibliotecas acima, garantindo compatibilidade entre elas.

Como adicionar Starters ao projeto?

A maneira mais fácil de adicionar Starters é através do [Spring Initializr](https://start.spring.io/):

  1. Acesse o site e selecione as dependências desejadas.
  2. Gere o projeto.
  3. Faça o download e extraia os arquivos.
  4. Abra o projeto em sua IDE.

O Spring Initializr adiciona automaticamente os Starters necessários no pom.xml, tornando a configuração mais simples.

Principais Spring Boot Starters:

  • spring-boot-starter-web: Para aplicações web com Spring MVC.
  • spring-boot-starter-security: Para implementar segurança.
  • spring-boot-starter-data-jpa: Para trabalhar com bancos de dados usando JPA e Hibernate.
  • spring-boot-starter-test: Para adicionar bibliotecas de teste como JUnit e Mockito.

Para visualizar todas as dependências incluídas em um Starter, você pode:

  • Abrir o pom.xml e verificar as dependências aninhadas.
  • Usar a funcionalidade de gerenciamento de dependências da sua IDE (Eclipse ou IntelliJ).

15. Spring Boot Parent

O Spring Boot Parent é um modelo de configuração padrão para projetos Spring Boot. Ele define várias configurações úteis, como:

  • Versão do Java (padrão Java 17, mas pode ser alterada no pom.xml).
  • Codificação UTF-8.
  • Configurações de plugins do Maven.

Como usar o Spring Boot Parent?

No pom.xml, incluímos a seguinte configuração:

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>3.0.0</version>
</parent>

Isso permite que todas as dependências do projeto herdem as versões definidas pelo Spring Boot, garantindo compatibilidade.

Se precisar alterar a versão do Java, basta adicionar:

<properties>
    <java.version>17</java.version>
</properties>

Benefícios do Spring Boot Parent:

  • Facilita o gerenciamento de dependências → As versões são herdadas automaticamente, sem precisar especificá-las manualmente.
  • Garante compatibilidade → Todas as bibliotecas do Spring Boot funcionarão corretamente.
  • Menos configuração → O Maven já vem com diversas configurações otimizadas.

Conclusão

Os Spring Boot Starters e o Spring Boot Parent tornam o desenvolvimento mais fácil, eliminando configurações manuais e garantindo que todas as dependências sejam compatíveis. Isso permite que os desenvolvedores foquem mais na lógica do negócio e menos na configuração do ambiente.

⚠️ **GitHub.com Fallback** ⚠️