DEV Community

Cover image for 📌 Tudo sobre Anotações (@Annotations) no Java e Spring! 🚀
André Victor
André Victor

Posted on

📌 Tudo sobre Anotações (@Annotations) no Java e Spring! 🚀

Se você já programou em Java, com certeza se deparou com aquelas misteriosas palavras começando com @. Mas afinal, o que são essas anotações (annotations) e por que são tão importantes? 🤔

✅ O que são anotações?
As anotações são uma forma poderosa de fornecer metadados ao código-fonte. Elas não afetam diretamente a lógica da aplicação, mas são utilizadas para informar ao compilador, ao Spring ou a outras ferramentas como um determinado elemento (classe, método ou atributo) deve ser tratado.

Elas podem ser usadas para:
✅ Configuração e injeção de dependências no Spring
✅ Mapear entidades para bancos de dados com JPA
✅ Definir regras de validação
✅ Especificar como dados são serializados para JSON
✅ Executar testes automatizados
✅ Agendar tarefas e muito mais!

🏗️ Exemplos práticos
Veja algumas anotações comuns e como elas são usadas:

📌 Injeção de dependência no Spring

@Service
public class MeuServico {
    @Autowired
    private MeuRepositorio repositorio;
}
Enter fullscreen mode Exit fullscreen mode

O @Service indica que a classe é um serviço gerenciado pelo Spring, e @Autowired injeta automaticamente uma instância do repositório.

📌 Mapeando uma entidade para o banco de dados

@Entity
@Table(name = "usuarios")
public class Usuario {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
}
Enter fullscreen mode Exit fullscreen mode

Aqui, @Entity define que a classe será mapeada para uma tabela no banco, e @id define a chave primária.

📌 Criando um endpoint REST

@RestController
@RequestMapping("/usuarios")
public class UsuarioController {
    @GetMapping("/{id}")
    public Usuario buscarPorId(@PathVariable Long id) {
        return servico.buscarPorId(id);
    }
}
Enter fullscreen mode Exit fullscreen mode

O @RestController transforma a classe em um controlador REST, e @GetMapping("/{id}") define um endpoint para buscar usuários pelo ID.

🚀 Conclusão

As anotações tornam o código mais organizado, conciso e padronizado. No Spring, elas são essenciais para reduzir a necessidade de configurações manuais e deixar a aplicação mais dinâmica.

E aí, qual anotação você mais usa no seu dia a dia? Comente aqui! ⬇️💬

Top comments (0)