Promoção no ar
Tempo restante da oferta:
00 Horas
30 Min
24 Seg
Assinar →

O que é o Spring Boot?

Neste artigo veremos o que é o Spring Boot e como ele pode nos auxiliar no desenvolvimento de aplicações Spring.

Cleyson Lima 6 anos atrás

Todo desenvolvedor Java sabe o quão trabalhoso é configurar uma aplicação. Uma vez que é necessário a criação de várias pastas e arquivos XML extensos e o menor dos erros pode impedir o funcionamento correto da aplicação, o que resulta em uma tremenda dor de cabeça até a identificação e correção do problema.

Certamente todo esse trabalho de configuração é por vezes frustrante. Pois o que o desenvolvedor deseja é escrever o código das regras de negócio, acompanhando os resultados na tela sem perda de tempo.

Entretanto, dentro do ecossistema do projeto Spring temos o Spring Boot que facilita todo esse trabalho de configuração.

Neste artigo você entenderá um pouco mais sobre como ele torna o desenvolvimento de aplicações Spring mais prazeroso.

O que é o Spring Boot?

O Spring Boot é um framework que torna fácil a criação de aplicações Spring autossuficientes e robustas, possibilitando a execução imediata. Contudo isso só é possível por conta da abordagem opinativa sobre a plataforma Spring e bibliotecas de terceiros, que permite ao desenvolvedor gastar o mínimo de tempo possível configurando o projeto, e sim codificando suas regras de negócio.

Dentre as principais funcionalidades do Spring Boot podemos citar:

  • A criação de aplicações Spring autossuficientes;
  • Servidores web como o Tomcat, Jetty e Undertow embutidos;
  • Prover starter’s opinativos para gerenciamento de dependências e build;
  • Configuração automática de bibliotecas Spring e de terceiros sempre que possível;
  • Funcionalidades para ambiente de produção como métricas, health checks e configurações externalizadas.
  • Dispensar a necessidade de configuração XML e geração de código.

Curso Spring Framework - Fundamentos Conhecer o curso

Como o Spring Boot funciona?

A princípio, para que tudo isso funcione, o Spring Boot utiliza o conceito de convenção sobre configuração, ou seja, o Spring Boot já possui uma série de configurações padrões para as bibliotecas Spring ou de terceiros que você deseja utilizar.

Entretanto, isso não impede que você personalize essas configurações. É bastante interessante que só é necessário alterar as configurações que deseja, as demais configurações do projeto seguem inalteradas.

Todo esse processo de autoconfiguração e gerenciamento de dependências providos pelo Spring Boot é feito através dos Starters - uma dependência que inicializa algum módulo dentro do nosso projeto.

Só para exemplificar, imagine o desenvolvimento de uma aplicação web com o Spring Web MVC, seria necessário adicionar no nosso projeto as dependências do Spring Core, Spring Web e Spring Web MVC. Além disso haveria a necessidade de configuração dos arquivos XML para que essas dependências funcionem corretamente. Com o Spring Boot, adicionando-se o spring-boot-starter-web o projeto já estará configurado corretamente para utilizar o Spring Web MVC.

Ainda assim existe outra vantagem sobre o uso dos starters do Spring Boot, é que ao utilizá-los, o nosso arquivo de dependências fica menor e mais organizado.

O Spring Initializr

Além disso, para facilitar ainda mais o desenvolvimento de aplicações com o Spring Boot, o Spring possui uma página chama spring initializr, nesta página você repassa as informações do seu projeto como a versão do Spring Boot, GroupID, ArtifactID e os starters. Assim, o spring initializr gera um projeto base para que você já comece o desenvolvimento das regras de negócio da sua aplicação.

Criando uma aplicação Spring Boot na prática

Para ilustrar o funcionamento do Spring Boot, vamos criar uma aplicação web simples com o auxílio do spring initializr.

Primeiramente, acesse o site do spring initializr e preencha as informações:

  • Project: Selecione a opção Maven
  • Language: Selecione a opção Java
  • Spring Boot: Selecione a opção 2.4.2
  • Group: br.com.treinaweb
  • Artifcat: spring-boot-teste
  • Packaging: Jar
  • Java: 11

Como esse será um projeto web, será necessária a adição dos starters do Spring Web e do Thymeleaf para servir como Template Engine.

Print da página do spring initializr com as informações necessárias para criar o projeto Spring

Então, preenchidas todas as informações, clique no botão “GENERATE” para baixar o arquivo .zip contendo o projeto.

Em seguida descompacte o arquivo .zip e o importe para a IDE ou Editor de Código Fonte que você usa.

Agora crie uma nova pasta chamada controller dentro da pasta src/main/java/br/com/treinaweb/springboottest.

Logo após a criação da pasta, crie um novo arquivo Java chamado HomeController.java com o seguinte código.

package br.com.treinaweb.springbootteste.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
@RequestMapping("/")
public class HomeController {

    @GetMapping("/saudacao/{nome}")
    public String saudacao(@PathVariable String nome, ModelMap model) {
        model.addAttribute("nome", nome);

        return "saudacao";
    }

}

Agora que já temos a nossa Action e nosso Controller criados, o que precisamos fazer é criar a página HTML que será exibida para o cliente.

Dentro da pasta resources/templates crie um arquivo HTML chamado saudacao.html com o seguinte código.

<!DOCTYPE html>
<html lang="pt-br" xmlns:th="<http://www.thymeleaf.org>">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Spring Boot - Index</title>
</head>
<body>
  <h1 th:text="'Olá, ' + ${nome}"></h1>
</body>
</html>

Curso Flutter - Trabalhando com recursos de hardware Conhecer o curso

Executando nossa aplicação Spring Boot

Por fim, agora que já temos a nossa aplicação criada, temos que executá-la para vermos o resultado no navegador.

A fim de executar a aplicação, abra o seu terminal e use o comando abaixo:

mvn spring-boot:run

Esse comando executa a aplicação que estará acessível a partir do localhost na porta 8080, acesse a url: http://localhost:8080/saudacao/TreinaWeb e uma página com o texto “Olá, TreinaWeb” aparecerá na tela.

Conclusão

Nesse artigo você viu como o Spring Boot nos ajuda durante o desenvolvimento de aplicações Spring, a criação de um projeto Spring Boot usando o Spring Initializr e o desenvolvimento de uma simples página usando o Spring Web MVC.

Embora esta seja uma aplicação bastante simples, perceba que em nenhum momento houve a necessidade de criar nenhum arquivo XML para a configuração dos módulos do Spring Web MVC e do Thymeleaf. Além disso, nem tivemos o trabalho de configurar um servidor Apache para servir a nossa aplicação, o que nos poupa tempo que é melhor empregado na codificação das regras de negócio.

Recomendo também a leitura do artigo Criando uma API REST com Spring Boot para um melhor contato com os frameworks do projeto Spring.

Continue lendo

Artigos relacionados

Um ano de acesso total para você viver de programação.

Todos os cursos e formações da TreinaWeb numa única assinatura, com professores que atuam no mercado, suporte direto e certificados. Do primeiro console.log ao mercado de trabalho.

  • 1 ano de acesso a todos os cursos
  • Cursos novos toda semana
  • Suporte direto com professores
  • Plano de carreira personalizado
  • Certificados digitais inclusos
  • Aplicativos para Android e iOS, com acesso offline
Garantia incondicional de satisfação

Teste por 7 dias e, se não fizer sentido para você, devolvemos seu dinheiro.

Acesso completo a todos os cursos e dezenas de Formações.

12 meses
Economize R$ 840,00 54% OFF

de 12x R$ 129,00 por apenas

12x R$ 59,00

sem juros no cartão de crédito ou R$ 599,00 à vista

Oferta termina em 00h 30min 24s

  • Acesso imediato e ilimitado durante 1 ano.
  • Plano de carreira personalizado.
  • Suporte direto com professores.
  • E muito mais!
Matricule-se agora