控制Bean创建
下面介绍如何使用Bean范围化来控制Bean的创建工作
?
1:Bean范围化
????? 这一部分内容在先前的文章中已经说明了。不再累述~~
具体请看Spring中bean的作用域简介
?
?
2:利用工厂方法来创建Bean
????很多时候,在Spring应用上下文中配置Bean都可以通过调用类的构造函数来创建。但是如果想通过静态厂方法,使用第三方API来展现某些类型,该如何做?
考虑在Spring中配置单例类的情况。单例类只是确保通过静态厂方法只创建一个实例。
Java代码如下:Stage单例类
?
如果一个上下文定义文件中有多个Bean都使用相同的方法来初始化或销毁,则可以如下配置
??
?
?
InitializaingBean和DisposableBean
作为init-method和destory-method的备选,我们可以重写类来实现两个特定的Spring接口:InitializaingBean和DisposableBean。其中InitializaingBean接口需要实现afterPropertiesSet()方法,它用来执行Bean的初始化。DisposableBean接口需要实现destory()方法。这种方法的好处是无需额外的配置。缺点是使得Bean与Spring API相互耦合,所以不建议使用~~~