Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Como ficaria as anotações e implementações desta aula em um Service?

Olá, boa noite comunidade da alura!

Professor fez a implementação dentro de um controller, e esta sendo meu primeiro contato com spring boot e vi no forúm a respeito que seria uma boa prática a implementação dos métodos dentro de um Service.

Como ficaria esta implementação do Service? E como a controller usaria este Service?

2 respostas
solução!

Oi Bruno,

Basta criar a classe service e a injetar normalmente no controller:

@Service
public class TopicoService {

    @Autowired
    private TopicoRepository topicoRepository;

    @Autowired
    private CursoRepository cursoRepository;

    public void cadastrar(TopicoForm form) {
        Topico topico = form.converter(cursoRepository);
        this.topicoRepository.save(topico);
    }
}
@RestController
@RequestMapping("/topicos")
public class TopicoController {

    @Autowired
    private TopicoService service;

    @PostMapping
    public void cadastrar(@RequestBody TopicoForm form) {
        this.service.cadastrar(form);
    }

}

Obrigado pela rápida resposta e atenção professor!