列举Spring Framework的优点。
答:
由于Spring Frameworks 的分层架构,用户可以自由选择自己需要的组件。Spring Framework支持POJO(Plain Old Java Object) 编程,从而具备持续集成和可测试性。由于依赖注入和控制反转,JDBC得以简化。它是开源免费的。
spring bean容器的生命周期是什么样的?
答:
spring bean容器的生命周期流程如下:
1、Spring容器根据配置中的bean定义中实例化bean。
2、Spring使用依赖注入填充所有属性,如bean中所定义的配置。
3、如果bean实现BeanNameAware 接口,则工厂通过传递bean的ID来调用setBeanName()。
4、如果bean实现BeanFactoryAware接口,工厂通过传递自身的实例来调用setBeanFactory()。
5、如果存在与bean关联的任何BeanPostProcessors,则调用preProcessBeforeInitialization() 方法。
6、如果为bean指定了init方法( 的init-method属性),那么将调用它。
7、最后,如果存在与bean关联的任何BeanPostProcessors,则将调用postProcessAfterInitialization() 方法。
8、如果bean实现DisposableBean接口,当spring容器关闭时,会调用destory()。
9、如果为bean指定了destroy方法( 的destroy-method属性),那么将调用它。