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

Spring Boot API REST - 03.Usando Spring Data - 09.Consulta com Filtros

Boa tarde, Rodrigo,

Na aula 09. Consulta com filtros, você explica como efetuar uma busca com relacionamento entre classes, e deu o seguinte exemplo caso tenhamos ambiguidade:

            List<Topico> topicos = topicoRepository.findByCurso_Nome(nomeCurso);

No caso acima, o (_) indica que é um relacionamento entre a classe Curso e que dentro dela temos um atributo com o nome "nome".

Minha pergunta é, seria uma boa prática, sempre usar esse padrão para indicar relacionamento, mesmo que no nosso código não possua nenhuma ambiguidade?

2 respostas
solução!

Boa tarde, Edilberto! Tudo bem com você?

Ótima pergunta! A utilização do _ para indicar relacionamento entre classes é uma convenção adotada no Spring Data quando há ambiguidade nos nomes dos atributos. No exemplo que você citou, o _ é utilizado para indicar que o atributo nome pertence à classe Curso, relacionada com a classe Topico.

Embora não seja obrigatório, é uma boa prática utilizar essa convenção sempre que houver ambiguidade nos nomes dos atributos. Isso torna o código mais claro e facilita a compreensão, tanto para você quanto para outros desenvolvedores que possam trabalhar no projeto no futuro.

Além disso, ao seguir essa convenção, você evita possíveis erros de busca em casos de ambiguidade, garantindo que o Spring Data encontre corretamente o atributo desejado.

Portanto, mesmo que no seu código não haja ambiguidade, é recomendado utilizar o _ para indicar relacionamentos entre classes, seguindo a convenção do Spring Data.

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.

Obrigado pelo retorno Armano Barros Alves Junior, vou adotar essa prática, sim, só queria me certificar que utilizando o _ mesmo não tendo ambiguidade no código se estaria agindo de forma correta.

Obrigado meu amigo