spring bean配置文件(spring基础二)
背景:今天看了spring测试工程bean的xml配置文件,整体复习一下bean基础。
我目前常见bean属性:id,class,property这三个。
1.id和class
id:是这个bean在全局的唯一标识。
class:是被@server注解的类的位置,一般包名+类名。
举个例子:
定义一个抽象接口,被@server注解[email protected]和@Component都是用来注解类,并把类放入spring的容器里面:
定义一个类继承接口,并重写接口的抽象方法:
ps:有个java基础-接口。首先接口不能被实例化的。接口的方法都需要被继承类进行重写。类可以implemetes关键字继承多个接口。但是类只能继承一个父类。即类继承接口可以有多个,但是父类只能有一个。此外接口如果有多个抽象方法,那么都需要继承接口的类都需要一一实现。
xml配置bean:
测试一下,我们通过@Autowired进行自动装配和通过@Qualifier注解来按照bean的xml配置中id进行准确注入。这里面@Server和@Qualifier是配套使用的。@Qualifier主要用来当有奇异的时候通过id唯一性来定位bean。这里面跟@Component和@Autowired配套使用是说一样的。@Component是不能注解到类中方法上->@Bean来修饰方法对返回实例进行pojo是声明。
2.property
这个属性就是给类中变量进行赋值的 pojo实例声明之后,类里面对应变量进行赋值。类似set()方法一样。如图:
property进行了两个变量的赋值contractInterface和rpc的赋值。
这里面有个工具类SCFContractFactoryBean继承了spring的接口FactoryBean ,重写了getObject(),isSingleton(),getObjectType()
因为类中有两个变量rpc和contractInterface。