Sou bastante novo no Spring Framework, ando brincando com ele e reunindo alguns aplicativos de amostra para avaliar o Spring MVC para uso em um projeto da empresa que está por vir. Até agora, eu realmente gosto do que vejo no Spring MVC, parece muito fácil de usar e incentiva você a escrever aulas que são muito amigáveis ao teste de unidade.
Apenas como exercício, estou escrevendo um método principal para um dos meus projetos de amostra / teste. Uma coisa que não tenho certeza é sobre as diferenças exatas entre BeanFactory
eApplicationContext
- qual é apropriado usar em quais condições?
Entendo que isso ApplicationContext
se estende BeanFactory
, mas se estou apenas escrevendo um método principal simples, preciso da funcionalidade extra que ApplicationContext
fornece? E exatamente que tipo de funcionalidade extra fazApplicationContext
fornece?
Além de responder "qual devo usar em um método main ()", existem padrões ou diretrizes quanto à implementação que devo usar nesse cenário? Meu método main () deve ser escrito para depender da configuração do bean / aplicativo no formato XML - isso é uma suposição segura ou estou bloqueando o usuário em algo específico?
E essa resposta muda em um ambiente da Web - se alguma de minhas turmas precisou conhecer o Spring, é mais provável que elas precisem ApplicationContext
?
Obrigado por qualquer ajuda. Sei que muitas dessas perguntas provavelmente foram respondidas no manual de referência, mas estou tendo dificuldades para encontrar uma análise clara dessas duas interfaces e dos prós / contras de cada uma sem ler o manual com um pente fino.