Desenvolvendo Sua Primeira API em Spring Boot Com MySQL by Gabriel Ritter Medium
Desenvolvendo Sua Primeira API em Spring Boot Com MySQL by Gabriel Ritter Medium
Desenvolvendo sua
primeira API em
Spring Boot com
MySQL
Gabriel Ritter · Follow
10 min read · Jan 6, 2021
Share
Pré-requisitos
Para acompanhar esse artigo sem
grandes dificuldades, é necessário um
certo conhecimento de lógica de
programação em Java, banco de dados
relacional e um pouco de conhecimento
em aplicações WEB. Além disso, é
necessário ter o Java (a versão 7, no
mínimo) em sua máquina e instalar os
seguintes programas:
Conceitos importantes
Primeiramente, precisamos entender
alguns conceitos importantes:
API (Application
Programming Interface)
é uma interface de
rotinas e padrões de
programação que
diversas aplicações
podem utilizar. Um bom
exemplo de API é a do
Google Maps, que
muitas aplicações usam
para se aproveitar dessa
ferramenta poderosa
criada pelo Google. É
por meio da API que é
possível que aplicações
conversem entre si, sem
que o usuário tenha
conhecimento disso.
Sabendo o que é uma API, podemos ir
para Spring:
Spring é um framework
(conjunto de pacotes
com classes pré-
definidas para o uso)
para o desenvolvimento
de aplicações, sendo
sua estrutura baseada
na linguagem de
programação Java.
Então por que usar ele? Bom, aqui vão
alguns motivos:
Spring boot é um
framework usado para
criar microsserviços
(arquitetura que
permite implementar e
implantar serviços de
forma independente) e
provê um ambiente
onde não é necessário
se preocupar tanto com
as configurações e sim
com a aplicação em si.
Não ficou convencido? Então lá vai
alguns pontos das funcionalidades do
Springboot:
Tudo é auto-configurado;
Mão na massa!
Antes de abrirmos nosso glorioso Spring
Tool Suite, temos que fazer algumas
coisinhas primeiro:
Dependências
<dependency>
<groupId>org.hibernate.validato
r</groupId>
<artifactId>hibernate-
validator-cdi</artifactId>
<version>7.0.0.Final</version>
</dependency>
Cliente.java
@GeneratedValue(strategy =
GenerationType.IDENTITY): Essa
anotação irá fazer com que os
valores da chave sejam criados
automaticamente e sequenciais;
@Column(nullable = false,unique =
true): Diz para o banco que o valor
não pode ser nulo e que também
deve ser único;
@Length(max = 100,message=”{}”):
Indica que número máximo de
caracteres deve ser 100;
@Email(message =”
{campo.clienteEmail.invalido}”):
Anotação que irá verificar se o email
é válido;
@CPF(message =
“{campo.clienteCpf.invalido}”):
Anotação que irá verificar se o CPF é
válido;
@JsonFormat(pattern =
“dd/MM/yyyy”): Define o padrão de
data que o campo aceitará.
public interface
IClienteRepository extends
JpaRepository<Cliente, Long> {}
10