Un anno circa ho letto un articolo che spiegava come creare un'annotazione che fondamentalmente è un contenitore per altre annotazioni. In questo modo, se uso sempre le stesse 5 annotazioni in un caso d'uso specifico, creo un'annotazione che le contiene e la uso invece.Come creare un'annotazione che è un gruppo di annotazioni?
Purtroppo, non riesco più a trovare l'articolo e mi piacerebbe davvero farlo ora per la mia configurazione di jackson.
Dal momento che non riesco a trovare alcuna informazione al riguardo, sto cominciando a mettere in discussione la mia memoria. È possibile o mi sbaglio?
EDIT
Quello che voglio è qualcosa di simile:
@Target(ElementType.METHOD)
@com.fasterxml.jackson.databind.annotation.JsonSerialize(using=MySerializerThatIsUsedEverywhere.class
@javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter(MyCustomXmlAdapter.class)
@SomeOtherEvaluatedByTheSerializer
public @interface SerializerUseCase01 {
public String a();
public int b();
)
mio scenario è che ho un sacco di casi d'uso serializzazione che possono essere gestiti dallo stesso serializzatore con differenti configurazioni. Per rendere tutto più facile da usare e più trasparente voglio avvolgere la configurazione di Jackson e la configurazione di serializzazione in un'unica annotazione.
spero la mia modifica ha reso tutto un po 'di più chiaro – Laures
Hmm. Quindi vuoi che 'SerializerUseCase01' sia qualcosa di simile ad un alias per una serie di altre interfacce (nascoste come dettagli di implementazione), è corretto? – Thor84no
corretto. Ma non ne sono più sicuro, perché nessuna delle annotazioni che voglio "nascondere" è contrassegnata da "@Target ({ElementType.ANNOTATION_TYPE, ...}". – Laures