Aula 2 Spring Framework
Aula 2 Spring Framework
LINGUAGEM DE PROGRAMAÇÃO
AULA 2
1 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
CONVERSA INICIAL
fornecem uma variedade de serviços. Esse framework surgiu como uma alternativa a plataforma Java
EE no começo dos anos 2000, na época, denominado J2EE devido aos gargalos de desempenho das
corporativas, estando presente no nosso dia a dia, seja em aplicações de streaming, compras on-line e
inúmeras outras soluções inovadoras. Além disso, o Spring conta com um conjunto abrangente de
extensões e bibliotecas de terceiros que permitem aos desenvolvedores criarem diferentes tipos de
aplicações.
Nesta aula, iremos abordar as principais características do Spring framework e iniciar o processo
1.1 HISTÓRIA
Em outubro de 2002, Rod Johnson escreveu o livro Expert One-on-One J2EE Design and
Development, pela editora Wrox, no qual ele elencou diversas deficiências na estrutura de
2 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
componentes da plataforma Java EE. Na época, foi denominada J2EE, o que tornavam o processo de
Nesse livro, Rod Johnson propõe uma solução mais simples que se baseia na utilização de classes
do tipo POJO (Plain Old Java Objects) e a Inversão de Controle (IoC – Inversion of Control) por meio da
Injeção de Dependência (DI – Dependency Injection). Utilizando esses conceitos, Rod Johnson
demonstrou em seu livro como implementar uma aplicação de reserva de assentos on-line
escalonável e de alta performance sem a utilização dos EJBs. O livro fez um enorme sucesso, tanto
que, após muitos anos de seu lançamento, ainda apresenta conceitos relevantes no desenvolvimento
desenvolvedores Juergen Hoeller e Yann Caroff entraram em contato com Rod Johnson para que
juntos desenvolvessem um projeto open-source baseado nos conceitos abordados no livro. Em 2003,
deram início ao projeto Spring, do inglês Spring, que significa “primavera”, nome proposto por Yann,
Em 2003, foi lançada a primeira versão do Spring Framework, que foi rapidamente adotada por
diversos desenvolvedores. No ano seguinte, Rod Johnson, Juergen Hoeller, Keith Donald e Colin
Sampaleanu fundaram a empresa Interface21, cujo foco estava voltado para a consultoria,
evoluindo e adquirindo novos adeptos, tanto que, em 2006, com a versão 2.0, o Spring ultrapassou a
No ano de 2007, a empresa Interface21 foi rebatizada para SpringSource, que, dois anos mais
tarde, foi adquirida pela VMWare por 420 milhões de dólares. Atualmente, o Spring Framework é
gerenciado pela empresa Pivotal, uma joint venture criada pelas empresas VMWare e EMC a partir de
1.2 CARACTERÍSTICAS
3 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
Conforme vimos anteriormente, o Spring se destacou no mercado por prover uma solução mais
simples que a plataforma J2EE, por meio da injeção de dependência e da utilização de classes POJO
em vez dos EJBs. Aqui, abordaremos essas duas características do Spring Framework.
a objeto, visando diminuir o acoplamento entre as classes da aplicação. Ela consiste basicamente em
tirar a responsabilidade de uma classe de instanciar objetos de outras classes das quais ela depende,
tendo em vista que as funcionalidades dessas outras classes podem posteriormente vir a ser
alteradas.
Isso traz inúmeros benefícios na manutenibilidade do projeto, pois deixa o código-fonte mais
legível, facilitando a sua interpretação e melhora a distribuição das responsabilidades das classes que
compõem a aplicação. Para entendermos esse padrão de desenvolvimento, vamos analisar a classe
Note que a classe Aplicacao possui um vínculo direto com a classe Tarefa, o que caracteriza um
forte acoplamento, visto que o atributo tarefa é instanciado dentro do método executaTarefa da
classe Aplicacao. De acordo com as boas práticas de programação orientada a objetos especificados
no princípio SOLID, o forte acoplamento entre classes fere a regra do princípio da responsabilidade
Uma das soluções possíveis para eliminar o forte acoplamento entre as classes seria, em vez de
4 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
instanciar o objeto dentro do método executaTarefa, criar um setter para atribuir um objeto já
instanciado ao atributo tarefa, tirando essa responsabilidade da classe Aplicacao. A solução para isso
pode ser observada no Quadro 2, no qual foi inserido o método setTarefa de forma a eliminar o forte
de controle por meio da injeção de dependência, dessa forma, o desenvolvedor não precisa se
preocupar em instanciar um determinado objeto, ele pode deixar essa atribuição a encargo do
próprio framework. No quadro a seguir, podemos visualizar a injeção de dependência para a classe
Dessa forma, o desenvolvedor não precisa se preocupar em gerenciar o ciclo de vida de uma
5 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
classe, o próprio Spring, por meio do seu contêiner de IoC, faz isso de forma automática, sabendo o
Uma classe do tipo POJO se caracteriza por conter um construtor padrão e possuir apenas os
métodos de getter e setter para acessar os seus atributos. No quadro a seguir, temos um exemplo de
Um dos grandes problemas da plataforma Java EE no começo dos anos 2000 era o uso dos EJBs,
6 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
que, embora provessem uma solução robusta, a sua configuração era complexa e exigia muito
Diante disso, o Spring surgiu com uma ótima alternativa a plataforma Java EE, já que também
provia os recursos necessários para o desenvolvimento de aplicações corporativas Java, porém com
um melhor desempenho e uma configuração mais simples, visto que, em vez dos EJBs, foram
adotadas classes do tipo POJO para a implementação das regras de negócio da aplicação.
de desenvolvimento pertinentes ao projeto que será desenvolvido. Para isso, iremos listar os
softwares que você deverá instalar na sua máquina para que possamos dar sequência ao curso.
2.1 IDE
compatível com diversas IDEs, porém adotaremos o Eclipse como software de desenvolvimento da
aplicação a ser desenvolvida, visto que é uma IDE poderosa, open-source e largamente utilizada no
mercado.
O Eclipse pode ser baixado no site. Ao executar o instalador, serão listadas diversas versões do
Eclipse, na qual o usuário deverá selecionar uma delas para dar sequência a instalação. Selecione a
opção Eclipse IDE for Enterprise Java and Web Developers conforme mostrado na figura a seguir.
7 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
Após selecionar a opção citada anteriormente, será exibida a tela de configuração da instalação,
devendo o usuário informar o diretório no qual a IDE será instalada, conforme podemos observar na
Figura 2. Configurado o diretório de instalação, basta clicar no botão Install para dar início ao
8 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
2.2 JDK
desenvolvimento Java (JDK – Java Development Kit). O JDK é composto por diversos componentes
2.2.1 JRE
Para que uma aplicação Java possa ser executada em uma determinada máquina, é necessário
que nela esteja instalado o ambiente de execução Java (JRE – Java Runtime Environment). O JRE é
plug-in composto pela máquina virtual Java (JVM – Java Virtual Machine) e a biblioteca padrão da
plataforma Java.
Uma das principais características da linguagem Java é a sua compatibilidade com diferentes
aplicação Java, não é gerado um arquivo executável, e sim um arquivo chamado bytecode. Ele é um
arquivo intermediário gerado pelo compilador da linguagem Java, que será interpretado pela JVM e
não contém qualquer vínculo com o sistema operacional do ambiente de desenvolvimento. Isso
qualquer ambiente que tenha suporte a JVM, por exemplo, os sistemas operacionais Windows, Mac e
Linux.
9 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
A JVM contém toda infraestrutura necessária para a execução de uma aplicação Java,
convertendo o código em bytecode em código de máquina, compatível com a plataforma na qual ele
de execução.
• Compilador JIT (Just In Time): responsável por otimizar a performance da aplicação durante a
sua execução.
A biblioteca padrão da linguagem Java contém um conjunto de pacotes que fornecem uma série
10 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
relacional, seria necessário que o programador desenvolvesse uma interface de comunicação com o
banco de dados para gerenciar os dados da sua aplicação. Porém, isso não é necessário, pois na
biblioteca padrão da linguagem Java existe um pacote chamado java.sql, que contém a
implementação de diversas classes e interfaces de comunicação com o banco de dados. Entre eles
• Interface Connection: utilizada para estabelecer a conexão com o servidor de banco de dados.
terceiros, bastando para isso importar o arquivo JAR (Java Archive) do framework que será utilizado.
2.3 SGBD
O SGBD (Sistema Gerenciador de Banco de Dados) é mais uma ferramenta imprescindível para o
armazenamento de dados do sistema. Entre os vários SGBDs disponíveis no mercado, vamos adotar o
MySQL para o desenvolvimento da aplicação, tendo em vista que é uma ferramenta open-source
Para realizar a instalação do MySQL, é necessário baixar e instalar o MySQL Workbench, software
que compreende o SGBD mais a interface gráfica para executarmos os comandos da Linguagem SQL.
O instalador pode ser baixado por meio do site dev.mysql. Ao executar o instalador do MySQL
11 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
caso necessário, será solicitada a instalação de softwares complementares que podem ser baixados
manualmente pelo próprio instalador. Boa parte do processo de instalação consiste em ir clicando no
botão Next, porém duas telas merecem destaque. A primeira é a tela de cadastro Accounts e Roles, na
qual é definida a senha do usuário administrador do MySQL, conforme podemos verificar na figura a
seguir.
12 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
Cadastre uma senha de fácil recordação, pois, caso você venha a esquecê-la futuramente, terá
que reinstalar o SGDB novamente, já que algumas funcionalidades do MySQL precisam de permissão
A segunda tela que merece destaque é a tela Connect To Server, nela podemos verificar se a
instalação foi realizada com sucesso. Para isso, informe no campo User name o usuário administrador
“root” sem aspas, no campo Password, a senha definida anteriormente na tela Accounts and Roles e,
em seguida, clique no botão Check. Caso a instalação tenha sido realizada com sucesso, será exibida a
mensagem Connection succeeded com o fundo verde na coluna Status, conforme pode ser visto na
figura a seguir.
13 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
2.4 POSTMAN
É uma ferramenta que foi desenvolvida para auxiliar os desenvolvedores na criação e teste das
APIs. Por meio dele, veremos as APIs que serão desenvolvidas durante o curso, tornando o processo
de desenvolvimento mais rápido e objetivo, uma vez que está a todo momento abrindo um browser
para realizar os testes. O Postman pode ser baixado no site e possui suporte para Windows, Mac ou
Linux.
Começar um projeto do zero nem sempre é uma tarefa fácil, pois precisamos configurar diversos
recursos da nossa aplicação antes de começarmos a codificação das regras de negócio. Esse processo
basicamente consiste em baixar, instalar e configurar as bibliotecas, frameworks e serviços que serão
14 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
desenvolvedor criar um projeto Spring de forma rápida e fácil, por meio do site.
Ao acessar o site anterior, será exibida a tela de configuração do projeto Spring, conforme
podemos observar na figura anterior. A configuração do projeto está dividida em cinco grupos.
A seguir, veremos com mais detalhes como esses grupos devem ser configurados.
3.1 PROJECT
15 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
construção do projeto, ou de forma mais informal, qual será a ferramenta de build (construção) do
projeto. Nesse grupo, podemos optar entre duas ferramentas diferentes: Maven e Gradle.
Essas ferramentas serão responsáveis por gerenciar as dependências do projeto, ou seja, cabe a
elas baixar, instalar e configurar as bibliotecas, frameworks e serviços que serão utilizados no
build do projeto, para que possamos realizar o processo de deploy (implantação) da aplicação.
3.2 LANGUAGE
No grupo Language, deve-se identificar qual será a linguagem de programação que será utilizada
para o desenvolvimento do projeto. Nesse grupo, temos três opções: Java, Kotlin e Groovy. Entre elas,
No grupo Spring Boot, deve-se identificar qual será a versão do Spring que será utilizada para o
versões a fim de selecionar a mais adequada para o projeto que virá a ser desenvolvido. Note que
algumas versões estão identificadas com M3, SNAPSHOT ou apenas pelo número da versão. As
• GA (General Availability): são as versões que foram lançadas ao público (versão estável) e nunca
• PRE: são as versões de pré-lançamento e são identificadas pela letra M (acrônimo para marco).
validação (versão instável), essas versões podem apresentar erros durante a execução do
framework e, assim como as versões de pré-lançamento, não devem ser utilizadas para o
16 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
Para exemplificar esse processo, o ciclo de vida da versão 1.0.0 seguiria o seguinte processo.
• 1.0.0 SNAPSHOT: essa versão é atualizada frequentemente com as alterações mais recentes.
• 1.0.0 M1: sempre que é atingido um marco de desenvolvimento é lançada uma versão de pré-
uma unidade, dessa forma, o primeiro marco de desenvolvimento é identificado pela sigla M1, o
• 1.0.0 GA: a partir do momento que foi lançado o último marco e a versão instantânea está
completa e não apresenta qualquer erro, a versão é disponibilizada para o público. A partir
desse momento, qualquer erro que for identificado e novas alterações serão desenvolvidas em
campos.
3.5 DEPENDENCIES
utilizados no desenvolvimento do projeto. Sempre que quisermos adicionar algum desses recursos,
17 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
Na tela de configuração do Spring Boot, são listadas as dependências mais utilizadas pelos
desenvolvedores no item Dependencies. Nesse item, já podemos vincular ao projeto algumas dessas
dependências, tornando o processo de configuração do projeto bem mais fácil e prático. A seguir,
• Spring Boot DevTools: ferramenta que contém configurações para uma experiência de
• Spring Web: permite a criação de aplicações web trazendo por padrão o servlet container
• Spring Session: fornece uma API para a implementação e gerenciamento das informações da
sessão do usuário.
• Spring Web Services: fornece suporte para a criação de Web Services do tipo SOAP.
• Thymeleaf: ferramenta alterativa as especificações JSF e JSP para desenvolvimento das páginas
web.
• JDBC API: API que permite efetuar a conexão com banco de dados relacional.
• Spring Data JPA: especificação para realizar a persistência de dados, usando JPA com Spring
Data e Hibernate.
Agora que sabemos como configurar um projeto pelo Spring Boot, vamos criar o nosso projeto
18 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
figura a seguir.
combinação de teclas Ctrl + Enter para baixar o arquivo de configuração do projeto. Será gerado um
arquivo zip com o nome do projeto, o qual deve ser extraído para posteriormente ser importado na
IDE que será adotada para o desenvolvimento da aplicação. Como iremos utilizar o Eclipse como IDE,
demonstraremos passo a passo como realizar a importação do projeto por meio dessa ferramenta de
desenvolvimento.
importação pelo menu “File > Import”, conforme podemos visualizar na Figura 10.
19 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
Ao acessar o menu citado anteriormente, será exibida a tela de importação conforme ilustra a
Figura 11.
20 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
No campo texto digite, “Maven”, sem aspas, selecione a opção Existing Maven Projects e clique
21 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
Nessa tela, deve ser informado o diretório no qual se encontra o arquivo de configuração do
projeto, aquele que geramos pelo Spring Boot. Utilize o botão Browse para realizar tal operação, após
estrutura do projeto. Vamos expandir o projeto clicando duas vezes sobre o nome do projeto na aba
Project Explorer no canto superior esquerdo, conforme podemos observar na Figura 15.
22 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
expandindo os nós até encontrar o arquivo SpringbootApplication, classe responsável por iniciar a
aplicação. Para verificarmos se o projeto foi importado com sucesso e não contém nenhum erro,
vamos executá-lo clicando com o botão direito sobre a classe SpringbootApplication e selecionando o
23 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
Como o Spring Boot já traz o Tomcat configurado por padrão, esse Servlet Container irá iniciar a
aplicação, e o log referente a esse processo será exibido no console do Eclipse. Caso a inicialização
tenha ocorrido com sucesso, no log, além de não apresentar qualquer mensagem de erro, informará a
porta na qual a aplicação está rodando, indicando que a aplicação já está apta para ser utilizada. Essa
informação pode ser encontrada na penúltima linha do log do como “Tomcat started on port 8080
Neste tema, abordaremos alguns conceitos necessários para que possamos iniciar o processo de
codificação de uma aplicação web utilizando o Spring Framework. Para isso, é necessário
24 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
compreender dois conceitos fundamentais, como funciona o protocolo HTTP e o arquitetura MVC.
Permite a troca de mensagens entre máquinas distintas por meio de hipertexto, sendo HTTP um
acrônimo para HyperText Transfer Protocol, ou seja, Protocolo de Transferência de Hipertexto. Esse
protocolo atua dentro da camada de aplicação do modelo OSI e é por meio dele que conseguimos
navegar pela web, acessando os mais variados sites disponíveis na rede de internet.
(Uniform Resource Locator) do site. O navegador, por sua vez, compreende esse conteúdo e faz uma
a essa URL. A URL representa um recurso com o qual deseja-se acessar, podendo ser uma imagem,
Agora que sabemos o que é uma URL, precisamos entender como ela é composta e, para isso,
vamos adotar o seguinte endereço: <http://www.gov.br/mec/pt-br>. Essa URL é composta por três
elementos.
• Protocolo: o prefixo anterior aos “://” da URL identifica o protocolo de comunicação que será
adotado para troca de dados entre as máquinas. Nesse caso, estamos utilizando o protocolo
HTTP, mas poderíamos utilizar outros protocolos como FTP, TCP etc.
• Host: identifica o servidor responsável por fornecer os recursos de um domínio, na URL o host
está compreendido ente os “://” e a primeira “/” após os “://”, sendo o host da URL
<www.gov.br>. O navegador para acessar o recurso dessa URL irá converter o seu host em um
endereço de IP por meio do DNS Lookup, a fim de identificar o servidor responsável pelo
• URL Path: identifica o recurso que será acessado pelo usuário, na URL é identificado logo após
o host, no endereço adotado como exemplo, a URL Path é /mec/pt-br. Nesse caso, o recurso a
ser acessado é uma página web, mas poderia ser uma imagem caso a URL Path fosse </images
25 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
/ico-mec.png/>.
5.1.1 Métodos
Os recursos gerenciados pela aplicação podem ser manipulados de diversas formas por meio de
uma URL. Quando uma requisição é efetuada pelo cliente, além da URL, precisamos informar também
Método Funcionalidade
Para realizar o CRUD (Create, Read, Update and Delete) de uma determinada entidade, ou seja,
de dados, devemos criar as URLs pertinentes a cada uma dessas operações e associá-las a um
determinado método. Na tabela a seguir, listamos as URL Path e seus respectivos métodos para
26 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
Note que, embora tenhamos URL Paths repetidas, o que define a operação a ser realizada é o
5.1.2 Porta
Para que a aplicação saiba quais são as requisições que ela deve processar, é necessário que na
URL seja informado o número da porta. O Tomcat por padrão atende as requisições da aplicação na
porta 8080, portanto, para consultar todos os usuários cadastrados no sistema, utilizaríamos a
Permite-nos passar informações adicionais na URL por meio do operador “?” para que a
aplicação possa realizar um processamento mais apurado de uma determinada requisição. Supondo
que desejamos saber todos os usuários ativos no sistema, poderíamos montar a requisição para GET
8080/usuarios?ativo =true.
arquitetura de uma aplicação web. Um dos padrões de arquitetura mais utilizados para o
desenvolvimento de aplicações web é o padrão arquitetural MVC, que é um acrônimo para o termo
27 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
Na figura anterior, temos uma visão do padrão MVC implementado pelo Spring, exibindo os três
componentes que compõem esse modelo arquitetural (Model, View e Controller) com a adição do
Front Controller. Por meio de um navegador, será exibida a interface gráfica da aplicação, na qual o
usuário realizará uma determinada tarefa. Ao realizar tal tarefa, será enviada ao servidor da aplicação
Essa requisição será recebida pelo Front Controller, componente responsável por receber as
requisições dos clientes e encaminhá-las para os Controllers pertinentes, que, por sua vez, realizarão o
processamento da requisição efetuada pelo cliente. Caso esse processamento exija algum tipo de
interação com o banco de dados, o Controller irá realizar essa operação e retornar os dados para o
Front Controller por meio de um Model, que irá conter todas as informações pertinentes à requisição
solicitada.
Ao receber o Model, o Front Controller irá encaminhá-lo a View, responsável por realizar o
processamento da página web, uma vez que, para o seu desenvolvimento, utilizamos componentes
(JSP, JSF, entre outros). Portanto, a View realizará esse processamento, adicionando os dados providos
pelo Model ao componente utilizado para o desenvolvimento da página web, devolvendo para o Front
Assim que a View retornar a página web para o Front Controller, este irá retornar para o
navegador uma resposta HTTP que fará o seu processamento, neste caso, exibindo a página web com
os dados pertinentes à requisição efetuada anteriormente. A partir disso, inicia-se um novo ciclo de
28 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
requisições por parte do usuário e, para cada nova solicitação, o mesmo fluxo de trabalho será
FINALIZANDO
ferramentas necessárias para a construção de uma aplicação utilizando o Spring Framework. Após
configurado o ambiente de desenvolvimento, por meio do Spring Boot, criamos o um projeto Spring
Além disso, também vimos como importar esse projeto dentro do Eclipse e os conceitos
pertinentes para o desenvolvimento de uma aplicação web, de como montar uma API REST de
requisições HTTP e como é o fluxo de processamento dessa requisição dentro da aplicação web
REFERÊNCIAS
APACHE. What is a Maven?: Maven – Introduction. Disponível em: <apache.org>. Acesso em: 19
dez. 2021.
ORACLE. Java Plataform Standard Edition 17 Development Kit: JDK 17. Disponível em:
SNYK. JVM Ecosystem report 2018: About our Plataform and Application. JVM Ecosystem, 2021.
29 of 30 23/02/2023, 08:40
UNINTER https://conteudosdigitais.uninter.com/libraries/newrota/?c=/gradNova/2...
SPRING. Web MVC Framework: 17. Web MVC framework. Disponível em: <spring.io>. Acesso
30 of 30 23/02/2023, 08:40