spring bean配置文件(spring基础二)

背景:今天看了spring测试工程bean的xml配置文件,整体复习一下bean基础。

我目前常见bean属性:id,class,property这三个。

1.id和class

id:是这个bean在全局的唯一标识。

class:是被@server注解的类的位置,一般包名+类名。

举个例子:

定义一个抽象接口,被@server注解.@Service和@Component都是用来注解类,并把类放入spring的容器里面:

spring bean配置文件(spring基础二)_第1张图片

定义一个类继承接口,并重写接口的抽象方法:

ps:有个java基础-接口。首先接口不能被实例化的。接口的方法都需要被继承类进行重写。类可以implemetes关键字继承多个接口。但是类只能继承一个父类。即类继承接口可以有多个,但是父类只能有一个。此外接口如果有多个抽象方法,那么都需要继承接口的类都需要一一实现。

spring bean配置文件(spring基础二)_第2张图片

xml配置bean:

测试一下,我们通过@Autowired进行自动装配和通过@Qualifier注解来按照bean的xml配置中id进行准确注入。这里面@Server和@Qualifier是配套使用的。@Qualifier主要用来当有奇异的时候通过id唯一性来定位bean。这里面跟@Component和@Autowired配套使用是说一样的。@Component是不能注解到类中方法上->@Bean来修饰方法对返回实例进行pojo是声明。

spring bean配置文件(spring基础二)_第3张图片

2.property

这个属性就是给类中变量进行赋值的 pojo实例声明之后,类里面对应变量进行赋值。类似set()方法一样。如图:

spring bean配置文件(spring基础二)_第4张图片

property进行了两个变量的赋值contractInterface和rpc的赋值。

这里面有个工具类SCFContractFactoryBean继承了spring的接口FactoryBean ,重写了getObject(),isSingleton(),getObjectType()

因为类中有两个变量rpc和contractInterface。

spring bean配置文件(spring基础二)_第5张图片

参考博客:https://blog.csdn.net/q1937915896/article/details/88178558?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

 

 

 

你可能感兴趣的:(spring,java)