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 BeanFactoryet ApplicationContext- ce qui est approprié à utiliser dans quelles conditions?
Je comprends que cela ApplicationContexts'étend BeanFactory, mais si j'écris simplement une méthode principale simple, ai-je besoin de la fonctionnalité supplémentaire ApplicationContextfournie? Et quel type de fonctionnalité supplémentaire ApplicationContextoffre 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.

