Articles of anotaciones

Uso de anotación anulable

Vi un método en Java declarado como: void foo(@Nullable Object obj) { … } ¿Cuál es el significado de @Nullable aquí? ¿Significa que la entrada podría ser null ? Sin la anotación, la entrada aún puede ser nula, así que supongo que no es solo eso. Gracias

¿Cómo asignar nombres de campo JSON a diferentes nombres de campos de objetos?

¿Cuál es la forma equiv en la anotación de Jackson Json para las siguientes anotaciones jax-b? Necesito producir json en lugar de xml y necesito saber las anotaciones de jackson convencionales que se denotan de forma equivalente en jax-b. renombrar un campo use getters en lugar de campos. Estas características son especialmente cruciales si el […]

anotación para hacer público un método privado solo para clases de prueba

Quién tiene una solución para esa necesidad común. Tengo una clase en mi aplicación. algunos métodos son públicos, ya que son parte de la API, y algunos son privados, ya que para el uso interno de hacer que el flujo interno sea más legible ahora, digamos que quiero escribir una prueba unitaria, o más como […]

¿Qué tipos se pueden usar para miembros de anotación Java?

Hoy quería crear mi primera interfaz de anotación siguiendo esta documentación y obtuve el error de comstackción “Tipo inválido para miembro de anotación”: public @interface MyAnnotation { Object myParameter; ^^^^^^ } Obviamente, Object no se puede usar como tipo de miembro de anotación. Lamentablemente, no pude encontrar ninguna información sobre qué tipos se pueden usar […]

¿Cómo usar Hibernate @ Any-related annotations?

¿Podría alguien explicarme cómo funcionan las anotaciones relacionadas con Any ( @Any , @AnyMetaDef , @AnyMetaDefs y @ManyToAny ) en la práctica? Tengo dificultades para encontrar cualquier documentación útil (JavaDoc solo no es muy útil) acerca de estos. Hasta ahora he llegado a la conclusión de que de alguna manera permiten la referencia a clases […]

Recuperar el atributo de anotación de Java

¿Cómo puedo recuperar el valor de una anotación en el método anotado? Yo tengo: @myAnnotation(attribute1 = value1, attibute2 = value2) public void myMethod() { //I want to get value1 here }

Los valores de las anotaciones Java se proporcionan de manera dinámica

Deseo proporcionar anotaciones con algunos valores generados por algunos métodos. Intenté esto hasta ahora: public @interface MyInterface { String aString(); } @MyInterface(aString = MyClass.GENERIC_GENERATED_NAME) public class MyClass { static final String GENERIC_GENERATED_NAME = MyClass.generateName(MyClass.class); public static final String generateName(final Class c) { return c.getClass().getName(); } } Pensamiento GENERIC_GENERATED_NAME es static final , se queja de […]

¿Cómo mezclar estrategias de herencia con anotaciones JPA e Hibernate?

De acuerdo con la Documentación de referencia de Hibernate , debería ser posible mezclar diferentes estrategias de mapeo de herencia al usar los metadatos XML de Hibernate: http://docs.jboss.org/hibernate/stable/core/reference/en/html/inheritance.html#inheritance-mixing-tableperclass-tablepersubclass Sin embargo, la sección correspondiente de la Guía de referencia de anotaciones de Hibernate no cubre eso: http://docs.jboss.org/hibernate/stable/annotations/reference/en/html/entity.html#d0e1168 Por otro lado, los JavaDocs sugieren que la mezcla […]

Emular herencia de anotación para interfaces y métodos con AspectJ

Con frecuencia, las personas hacen preguntas de AspectJ como esta, por lo que quiero responderlas en un lugar al que pueda acceder fácilmente más adelante. Tengo esta anotación de marcador: package de.scrum_master.app; import java.lang.annotation.Inherited; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; @Inherited @Retention(RetentionPolicy.RUNTIME) public @interface Marker {} Ahora anoto una interfaz y / o métodos como este: package […]

¿Cómo afectan las diferentes políticas de retención a mis anotaciones?

¿Alguien puede explicar de forma clara las diferencias prácticas entre las constantes java.lang.annotation.RetentionPolicy SOURCE , CLASS y RUNTIME ? Tampoco estoy exactamente seguro de lo que significa la frase “retención de anotación”.