Annotations personnalisées résolues au runtime
Problème Dans certains cas il serait utile de pouvoir décrire des comportements au niveau des interfaces de vos classes. La plupart du temps cette description est ajoutée à la javadoc des interfaces, pour les API publiques du moins. Le problème c'est que cette documentation n'est pas compréhensible par l'application ni à la compilation ni à l’exécution. Il est donc nécessaire d'implémenter un mécanisme qui répond à la documentation. À ce stade, la difficulté est de garder l’implémentation conforme à la documentation, sans qu'aucun garde fou ne nous y contraigne. Java 5 à introduit le principe d'annotation, qui permet d'introduire des informations supplémentaires à la signature des méthodes ou la déclaration des properties. Plusieurs JSR décrivent des "dictionnaires" d'annotations par exemple : La JSR 181 qui décrit les annotations pour les webservices, la JSR 303 les validations de bean, ou bien encore la JSR 317 qui décrit les annota...