102 votes

Comment créer des paramètres optionnels pour ses propres annotations ?

Voici le code d'annotation

public @interface ColumnName {
   String value();
   String datatype();
 }

Je voudrais faire datatype un paramètre facultatif, par exemple

@ColumnName(value="password") 

doit être un code valide.

141voto

Riduidel Points 13456

Il semble que le premier exemple dans le documentation officielle dit tout ...

/**
 * Describes the Request-For-Enhancement(RFE) that led
 * to the presence of the annotated API element.
 */
public @interface RequestForEnhancement {
    int    id();
    String synopsis();
    String engineer() default "[unassigned]"; 
    String date()     default "[unimplemented]"; 
}

40voto

Johannes Wachter Points 1664

Pour le rendre facultatif, vous pouvez lui attribuer une valeur par défaut comme ceci :

public @interface ColumnName {
   String value();
   String datatype() default "String";
 }

Il n'est donc pas nécessaire de le préciser lors de l'utilisation de l'annotation.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X