J'ai observé le fait étrange (basé sur les questions dans le tag hibernate) que les gens utilisent encore activement des fichiers xml au lieu d'annotations pour spécifier leurs mappings ORM (Hibernate/JPA).
Il y a quelques cas où cela est nécessaire :
- vous utilisez des classes qui sont fournies, et vous voulez les mettre en correspondance.
- vous écrivez une API, dont les classes de domaine peuvent être utilisées sans fournisseur JPA, et vous ne voulez donc pas forcer une dépendance JPA/Hibernate.
Mais ce ne sont pas des cas courants, je pense.
Mes hypothèses sont les suivantes :
- les gens sont habitués aux fichiers xml et ne se sentent pas à l'aise / ne veulent pas prendre la peine d'apprendre à utiliser l'approche d'annotation.
- Java pre-1.5 est imposé au projet et il n'y a rien à y faire
- les gens ne savent pas que les annotations sont un remplacement complet du mapping xml.
- les systèmes existants sont pris en charge et le changement d'approche est donc considéré comme risqué
- les gens craignent que le mélange d'annotations (méta-informations) avec leurs classes soit une erreur.
D'autres explications possibles ?