Desenvolvimento Back-end Java 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 26 de fevereiro de 2021

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.

Formação:
CONHEÇA A FORMAÇÃO

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.
Java - Criação de aplicações web com Spring Boot
Curso de Java - Criação de aplicações web com Spring Boot
CONHEÇA 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>
Java - Criação de aplicações web com Spring MVC
Curso de Java - Criação de aplicações web com Spring MVC
CONHEÇA 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.

Deixe seu comentário

Conheça o autor desse artigo

  • Foto Autor Cleyson Lima
    Cleyson Lima

    Professor, programador, fã de One Piece e finge saber cozinhar. Cleyson é graduando em Licenciatura em Informática pelo IFPI - Campus Teresina Zona Sul, nos anos de 2019 e 2020 esteve envolvido em vários projetos coordenados pela secretaria municipal de educação da cidade de Teresina, onde o foco era introduzir alunos da rede pública no mundo da programação e robótica. Hoje é instrutor dos cursos de Spring na TreinaWeb, mas diz que seu coração sempre pertencerá ao Python.

    Posts desse Autor

Artigos relacionados