0% acharam este documento útil (0 voto)
2 visualizações3 páginas

Apostila Java Fullstack Parte1

A apostila orienta na construção de uma API REST simples usando Spring Boot, abordando a estrutura do projeto em camadas: model, repository, service e controller. Ela detalha a criação de uma entidade 'Usuario', encapsulamento, implementação do repository, lógica de negócios na camada service e exposição de endpoints na camada controller. O fluxo da aplicação é explicado, assim como o teste da API com uma requisição POST para criar um usuário.
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
2 visualizações3 páginas

Apostila Java Fullstack Parte1

A apostila orienta na construção de uma API REST simples usando Spring Boot, abordando a estrutura do projeto em camadas: model, repository, service e controller. Ela detalha a criação de uma entidade 'Usuario', encapsulamento, implementação do repository, lógica de negócios na camada service e exposição de endpoints na camada controller. O fluxo da aplicação é explicado, assim como o teste da API com uma requisição POST para criar um usuário.
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

Apostila Prática — Java Fullstack com Spring Boot

(Parte 1)

Objetivo
Esta apostila guia você passo a passo na construção de uma API REST simples usando Spring Boot,
aplicando conceitos fundamentais de Java, Programação Orientada a Objetos e arquitetura em camadas.

1. Estrutura do Projeto
Crie um projeto Spring Boot e organize os pacotes seguindo a arquitetura em camadas.
[Link]
■■■ controller
■■■ service
■■■ repository
■■■ model
Cada camada tem uma responsabilidade específica:

• model: representa as entidades do banco de dados.

• repository: comunicação com o banco.

• service: regras de negócio.

• controller: recebe requisições HTTP.

2. Criando a Entity
Uma Entity representa uma tabela no banco de dados. Crie a classe Usuario no pacote model.
@Entity
public class Usuario {
@Id
@GeneratedValue(strategy = [Link])
private Long id;
private String nome;
private String email;
// getters e setters
}
As anotações principais:
• @Entity: define que a classe será mapeada para uma tabela.

• @Id: define a chave primária.

• @GeneratedValue: gera o ID automaticamente.

3. Encapsulamento (POO)
Os atributos devem ser privados. O acesso é feito por getters e setters.
private String nome;
public String getNome() {
return nome;
}
public void setNome(String nome) {
[Link] = nome;
}
4. Criando o Repository
O Repository é responsável por acessar o banco de dados.
public interface UsuarioRepository
extends JpaRepository<Usuario, Long> {
}
O Spring Data JPA já fornece métodos prontos como:

• save()

• findAll()

• findById()

• delete()

5. Criando a Camada Service


A camada Service contém a lógica de negócio da aplicação.
@Service
public class UsuarioService {
@Autowired
private UsuarioRepository repository;
public Usuario salvarUsuario(Usuario usuario){
return [Link](usuario);
}
}

6. Criando o Controller
O Controller expõe endpoints REST para os clientes.
@RestController
@RequestMapping("/usuarios")
public class UsuarioController {
@Autowired
private UsuarioService service;
@PostMapping
public Usuario criar(@RequestBody Usuario usuario){
return [Link](usuario);
}
}

7. Entendendo o Fluxo da Aplicação


1 1. O cliente envia uma requisição HTTP.

2 2. O Controller recebe a requisição.

3 3. O Service executa a regra de negócio.

4 4. O Repository salva no banco.

5 5. A resposta retorna ao cliente.

8. Testando a API
Envie uma requisição POST para /usuarios com JSON:
{
"nome": "João",
"email": "joao@[Link]"
}
Se tudo estiver correto, o sistema criará o usuário e retornará o objeto salvo.

Fim da Apostila — Parte 1

Você também pode gostar