14 - Remoção de alunos

Olá, pessoal! Nessa décima quarta aula do treinamento, iremos implementar a rota responsável pela remoção de alunos.

Veja abaixo a estrutura atualizada do nosso arquivo AlunoControle.java:


package br.com.ralflima.api.alunos.controle;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import br.com.ralflima.api.alunos.entidade.AlunoEntidade;
import br.com.ralflima.api.alunos.repositorio.AlunoRepositorio;
import java.util.UUID;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.PathVariable;

@RestController
@RequestMapping("/api/alunos")
public class AlunoControle {

    @Autowired
    private AlunoRepositorio repositorio;
    
    @GetMapping("/mensagem")
    public String mensagem() {
        return "Hello World!";
    }

    @PostMapping("/cadastrar")
    public AlunoEntidade cadastrar(@RequestBody AlunoEntidade aluno) { 
        return repositorio.save(aluno);
    }

    @GetMapping("/listar")
    public Iterable< AlunoEntidade > listar() {
        return repositorio.findAll();
    }

    @PutMapping("/alterar/{codigo}")
    public AlunoEntidade alterar(@PathVariable UUID codigo, @RequestBody AlunoEntidade aluno) {
        aluno.setCodigo(codigo);
        
        return repositorio.save(aluno);
    }

    @DeleteMapping("/remover/{codigo}")
    public void remover(@PathVariable UUID codigo){
        repositorio.deleteById(codigo);
    }

}

Abaixo compartilho nossa aula no YouTube: