Tarefa do Spring
Tarefa
Será necessário continuar a implementação da aplicação do capítulo anterior e desenvolver a lógica para pesquisa de um produto pelo nome.
Lógica de Implementação
Nível do Repositório
Já existe um método com implementação vazia na classe ProductRepository. Este método é destinado à busca de produtos pelo nome. É necessário implementar este método.
Assinatura
Product findByName(String name)
Nível de Serviço
Em seguida, avance para a camada de serviço na classe ProductService para chamar o método findByName() do repositório.
Assinatura
Product getProductByName(String name);
É necessário implementar a lógica para recuperar o produto pelo seu nome a partir do repositório e passá-lo para a camada de controlador.
Nível do Controlador
Agora, implementar o método findProductsByName() no ProductRestController para adicionar um novo endpoint para pesquisa de produtos por nome.
É possível utilizar o método GET com a URL /find, passando o nome como parâmetro. Utilize a anotação @RequestParam para recuperá-lo nos parâmetros do método.
Assinatura
Product findProductByName(@RequestParam String name);
Exemplo de requisição: localhost:8080/find?name=product1
Agora, realizar teste para garantir que tudo está configurado corretamente. Navegar até o caminho /src/test/java/com/codefinity/springbootexmshop e executar todos os testes. Todos devem ser aprovados com sucesso.
Obrigado pelo seu feedback!
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo
Awesome!
Completion rate improved to 3.45
Tarefa do Spring
Deslize para mostrar o menu
Tarefa
Será necessário continuar a implementação da aplicação do capítulo anterior e desenvolver a lógica para pesquisa de um produto pelo nome.
Lógica de Implementação
Nível do Repositório
Já existe um método com implementação vazia na classe ProductRepository. Este método é destinado à busca de produtos pelo nome. É necessário implementar este método.
Assinatura
Product findByName(String name)
Nível de Serviço
Em seguida, avance para a camada de serviço na classe ProductService para chamar o método findByName() do repositório.
Assinatura
Product getProductByName(String name);
É necessário implementar a lógica para recuperar o produto pelo seu nome a partir do repositório e passá-lo para a camada de controlador.
Nível do Controlador
Agora, implementar o método findProductsByName() no ProductRestController para adicionar um novo endpoint para pesquisa de produtos por nome.
É possível utilizar o método GET com a URL /find, passando o nome como parâmetro. Utilize a anotação @RequestParam para recuperá-lo nos parâmetros do método.
Assinatura
Product findProductByName(@RequestParam String name);
Exemplo de requisição: localhost:8080/find?name=product1
Agora, realizar teste para garantir que tudo está configurado corretamente. Navegar até o caminho /src/test/java/com/codefinity/springbootexmshop e executar todos os testes. Todos devem ser aprovados com sucesso.
Obrigado pelo seu feedback!