Bean 的装配,即Bean对象的创建。容器根据代码要求创建Bean对象后再传递给代码的过程,称为Bean的装配。

一、默认分的装配方式

默认的装配的方式调用Bean类的构造方法

二、动态工厂Bean

首先创建一个工厂

Spring Bean的装配

配置bean

Spring Bean的装配

Spring Bean的装配

 

三、静态工厂bean

Spring Bean的装配

静态工厂不用new对象,要直接调用

 

Spring Bean的装配

执行如下:

Spring Bean的装配

 

四、容器中Bean的作用域

什么是作用域:

Spring Bean的装配

但,如果scope设置成prototype,就不一样了,如下图

Spring Bean的装配

 

Spring Bean的装配

 

Spring Bean的装配

 

附加说明

 Spring Bean的装配

 五、Bean后处理器(重要)

Spring Bean的装配

 

先写一个简单的Bean后处理器,首先定义一个Bena后处理器,需要实现BeanPostProcessor 这个接口

Spring Bean的装配

xml配置如下:

Spring Bean的装配

 

执行代码如下:

Spring Bean的装配

 Bean后处理器简单的事例就完成了,说白了,Bean后处理器类型拦截器。

 

 

下面说一说Bean后处理器的应用:

首先改一下ISomeService接口文件

 Spring Bean的装配

Spring Bean的装配

问题来了,如下图,需求是xml里面配置的someService1 返回值是变成大小,someService2正常输出

Spring Bean的装配

使用jdk代理Proxy

Spring Bean的装配

执行如下:

Spring Bean的装配

Spring Bean的装配

 

第二个问题是,如果SomeServiceImpl里面有两个方法,值对一个方法增强,也就是只对一个方法输出变大写。

Spring Bean的装配

Spring Bean的装配

在代理里面添加一个if判断,看是不是doOther方法就行了

Spring Bean的装配

 

 

 六、定制Bean的生命始末

Spring Bean的装配

Spring Bean的装配

Spring Bean的装配

 

 

七、Bean的生命周期 

 

Spring Bean的装配

 

 

 

 

相关文章: