摘要: 6.6.2 ApplicationContextAware和BeanNameAware 当ApplicationContext创建了一个实现org.springframework.context.ApplicationContextAware接口的对象实例时,就为该实例提供了ApplicationC 阅读全文
posted @ 2019-02-08 07:29 编程老司机A 阅读(272) 评论(0) 推荐(0) 编辑
摘要: 6.6自定义Bean的特性 6.6.1生命周期回调 要与容器的bean生命周期管理进行交互,可以实现Spring的InitializingBean和DisposableBean接口。对于前者,容器会调用afterPropertiesSet(),对于后者,容器会调用destroy()以允许bean在初 阅读全文
posted @ 2019-02-07 07:19 编程老司机A 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 6.5.5 自定义(custom)作用域 Bean的作用域是可扩展的;您可以定义自己的作用域,甚至重新定义现有作用域,尽管后者被认为是不好的做法,您无法覆盖内置的单例和原型作用域。 要将自定义作用域集成到Spring容器中,需要实现org.springframework.beans.factory. 阅读全文
posted @ 2019-02-06 08:36 编程老司机A 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 6.5.4 请求(request)、会话(session)和全局会话(global session)作用域 请求,会话和全局会话作用域仅在您使用Web的Spring ApplicationContext实现(例如XmlWebApplicationContext)时可用。如果将这些作用域与常规的Spr 阅读全文
posted @ 2019-02-05 18:43 编程老司机A 阅读(557) 评论(0) 推荐(0) 编辑
摘要: 6.5.3依赖于原型Bean的单例Bean 当您使用具有依赖于原型bean的单例bean时,请注意在实例化时解析依赖项。 因此,如果将原型作用域的bean注入到单例作用域的bean中,则会实例化一个新的原型bean,然后将依赖注入到单例bean中。原型实例是唯一提供给单例作用域bean的实例。 但是 阅读全文
posted @ 2019-02-04 06:23 编程老司机A 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 6.5.2原型(prototype)作用域 部署非单例的、原型Bean,会导致每次请求Bean实例时,都会返回一个新的实例。也就是说,bean被注入另一个bean,或者通过对容器的getBean()方法调用来请求它。通常来说,对所有有状态bean使用原型作用域,对无状态bean使用单例作用域。下图说 阅读全文
posted @ 2019-02-03 06:42 编程老司机A 阅读(322) 评论(0) 推荐(0) 编辑
摘要: 6.5.1 单例(singleton)作用域 定义为单例作用域的Bean,在Spring容器中只会存在一个实例,这个实例是共享的,所有匹配这个Bean的请求,Spring容器返回此共享的实例。换句话说,当您定义bean定义并将其作用域设置为singleton时,Spring IoC容器只会创建该be 阅读全文
posted @ 2019-02-02 09:07 编程老司机A 阅读(256) 评论(0) 推荐(0) 编辑
摘要: 6.1 Bean的作用域 当你创建一个Bean的定义,你就为这个Bean定义的类创建了一个配方。Bean的定义是一个配方的想法是重要的,因为这意味着,你可以通过这个配方创建许多对象实例。 您不仅可以控制要插入到从特定bean定义创建的对象的各种依赖项和配置值,还可以控制从特定bean定义创建的对象的 阅读全文
posted @ 2019-02-01 13:17 编程老司机A 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 6.4.6 方法注入 在大多数应用程序场景中,容器中的大多数bean都是单例。 当单例bean需要与另一个单例bean协作,或者非单例bean需要与另一个非单例bean协作时,通常通过将一个bean定义为另一个bean的属性来处理依赖关系。 当bean生命周期不同时会出现问题。假如单例Bean A需 阅读全文
posted @ 2019-01-31 22:11 编程老司机A 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 6.4.5 自动装配 Spring容器可以在协作bean之间自动建立关系。你可以允许Spring通过检查ApplicationContext的上下文,自动为你的bean解析协作者(其他bean)。自动装配具有以下优点: 自动装配可以显著减轻指定属性或构造参数的需求量; 自动装配可以随着你对象的演化而 阅读全文
posted @ 2019-01-30 19:14 编程老司机A 阅读(180) 评论(0) 推荐(0) 编辑