| @Override | JDK | Indica que un método sobrescribe uno de su clase padre. |
| @Deprecated | JDK | Marca elementos obsoletos que no deberían usarse. |
| @SuppressWarnings | JDK | Suprime advertencias del compilador. |
| @FunctionalInterface | JDK | Declara que una interfaz tiene un solo método abstracto. |
| @Retention | JDK | Define si la anotación está disponible en compilación o ejecución. |
| @Target | JDK | Especifica dónde puede aplicarse la anotación. |
| @Documented | JDK | Incluye la anotación en la documentación generada. |
| @Inherited | JDK | Permite que una anotación se herede por subclases. |
| @Entity | JPA | Declara una clase como entidad persistente. |
| @Id | JPA | Marca el campo como clave primaria. |
| @GeneratedValue | JPA | Define cómo se genera el valor de la clave primaria. |
| @Column | JPA | Personaliza el mapeo de un campo a una columna. |
| @Table | JPA | Define el nombre y propiedades de la tabla asociada. |
| @OneToOne / @OneToMany | JPA | Define relaciones entre entidades. |
| @ManyToOne / @ManyToMany | JPA | Define relaciones complejas entre entidades. |
| @JoinColumn | JPA | Especifica la columna de unión en relaciones. |
| @Transient | JPA | Excluye un campo del mapeo a la base de datos. |
| @Component | Spring Boot | Marca una clase como bean genérico. |
| @Service | Spring Boot | Especializa @Component para lógica de negocio. |
| @Repository | Spring Boot | Especializa @Component para acceso a datos. |
| @Controller | Spring Boot | Maneja peticiones HTTP en aplicaciones web. |
| @RestController | Spring Boot | Combina @Controller y @ResponseBody para APIs REST. |
| @Autowired | Spring Boot | Inyección automática de dependencias. |
| @Qualifier | Spring Boot | Especifica qué bean inyectar. |
| @Configuration | Spring Boot | Declara clases de configuración de beans. |
| @Bean | Spring Boot | Declara un bean dentro de una clase @Configuration. |
| @Value | Spring Boot | Inyecta valores desde archivos de propiedades. |
| @GetMapping | Spring Boot | Asocia un método a una petición HTTP GET. |
| @PostMapping | Spring Boot | Asocia un método a una petición HTTP POST. |
| @PutMapping | Spring Boot | Asocia un método a una petición HTTP PUT. |
| @DeleteMapping | Spring Boot | Asocia un método a una petición HTTP DELETE. |
| @RequestParam | Spring Boot | Extrae parámetros de la URL. |
| @PathVariable | Spring Boot | Extrae variables de la ruta. |
| @RequestBody | Spring Boot | Mapea el cuerpo de la petición a un objeto. |
| @ResponseBody | Spring Boot | Devuelve el resultado directamente en el cuerpo HTTP. |
| @Getter / @Setter | Lombok | Genera automáticamente getters y setters. |
| @ToString | Lombok | Genera el método toString(). |
| @EqualsAndHashCode | Lombok | Genera equals() y hashCode(). |
| @NoArgsConstructor | Lombok | Constructor sin argumentos. |
| @AllArgsConstructor | Lombok | Constructor con todos los campos. |
| @RequiredArgsConstructor | Lombok | Constructor con campos final y @NonNull. |
| @Data | Lombok | Combina varias anotaciones comunes. |
| @Builder | Lombok | Implementa el patrón Builder. |
| @Value | Lombok | Clase inmutable con campos final. |
| @Slf4j | Lombok | Agrega un logger con SLF4J. |
| @Test | JUnit | Marca un método como prueba unitaria. |
| @BeforeEach | JUnit | Ejecuta antes de cada prueba. |
| @AfterEach | JUnit | Ejecuta después de cada prueba. |
| @BeforeAll | JUnit | Ejecuta una vez antes de todas las pruebas. |
| @AfterAll | JUnit | Ejecuta una vez después de todas las pruebas. |
| @Disabled | JUnit | Desactiva una prueba temporalmente. |
| @DisplayName | JUnit | Define un nombre personalizado para la prueba. |
| @Nested | JUnit | Define clases de prueba anidadas. |
| @Tag | JUnit | Agrupa pruebas por categoría. |