Je suis assez nouveau dans Spring Framework, j'ai joué avec lui et assemblé quelques exemples d'applications dans le but d'évaluer Spring MVC pour une utilisation dans un projet d'entreprise à venir. Jusqu'à présent, j'aime vraiment ce que je vois dans Spring MVC, semble très facile à utiliser et vous encourage à écrire des classes qui sont très faciles à tester.
Juste comme exercice, j'écris une méthode principale pour l'un de mes projets d'échantillons / tests. Une chose dont je ne suis pas certain, c'est les différences exactes entre BeanFactory
et ApplicationContext
- ce qui est approprié à utiliser dans quelles conditions?
Je comprends que cela ApplicationContext
s'étend BeanFactory
, mais si j'écris simplement une méthode principale simple, ai-je besoin de la fonctionnalité supplémentaire ApplicationContext
fournie? Et quel type de fonctionnalité supplémentaire ApplicationContext
offre exactement ?
En plus de répondre "qui dois-je utiliser dans une méthode main ()", existe-t-il des normes ou des directives concernant l'implémentation à utiliser dans un tel scénario? Est-ce que ma méthode main () doit être écrite pour dépendre de la configuration du bean / application au format XML - est-ce une hypothèse sûre, ou suis-je en train de verrouiller l'utilisateur dans quelque chose de spécifique?
Et cette réponse change-t-elle dans un environnement Web - si l'une de mes classes devait connaître Spring, est-elle plus susceptible d'en avoir besoin ApplicationContext
?
Merci pour toute aide. Je sais que beaucoup de ces questions trouvent probablement une réponse dans le manuel de référence, mais j'ai du mal à trouver une ventilation claire de ces deux interfaces et les avantages / inconvénients de chacune sans lire le manuel avec un peigne à dents fines.