bean factory与applicationcontext区别

On the surface, an ApplicationContext is much the same as a BeanFactory.
Both load bean definitions, wire beans together, and dispense beans upon
request. But an ApplicationContext offers much more:
■ Application contexts provide a means for resolving text messages, including
support for internationalization (I18N) of those messages.
■ Application contexts provide a generic way to load file resources, such
as images.
■ Application contexts can publish events to beans that are registered as
listeners.

Aside from the additional functionality offered by application contexts,
another big difference between an application context and a bean factory is how
singleton beans are loaded. A bean factory lazily loads all beans, deferring bean
creation until the getBean() method is called. An application context is a bit
smarter and preloads all singleton beans upon context startup. By preloading singleton
beans, you ensure that they will be ready to use when needed—your application
won’t have to wait for them to be created.

你可能感兴趣的:(bean)