Olá, Henrique. Tudo bem?
Ótima pergunta! As anotações @Service e @Repository são utilizadas no Spring Framework para indicar que uma classe é um serviço e um repositório, respectivamente. A principal diferença entre as duas é que o @Service é utilizado para marcar uma classe que contém a lógica de negócio da aplicação, enquanto o @Repository é utilizado para marcar uma classe que é responsável por acessar e manipular dados no banco de dados.
Embora seja possível utilizar apenas a anotação @Component para ambas as classes, é recomendado utilizar as anotações específicas para deixar o código mais claro e fácil de entender. Além disso, as anotações @Service e @Repository possuem comportamentos específicos em relação ao tratamento de exceções e transações, que podem ser úteis em determinados casos.
Então, para responder a sua pergunta, a anotação @Service é utilizada em classes de serviço para indicar que a classe contém a lógica de negócio da aplicação, enquanto a anotação @Repository é utilizada em classes que acessam e manipulam dados no banco de dados. Embora não seja obrigatório utilizar essas anotações, é recomendado utilizá-las para deixar o código mais claro e fácil de entender.
Espero ter ajudado e bons estudos!