在XML中Bean的一些属性:
- lazy-init:控制Bean实例化的时期。lazy-init有true和false两个值进行选择,等于true时,Bean实例化话的时机会往后延迟(scope=“singleton”),在main方法里通过获得上下文配置时,不会对bean进行实例化,执行getBean方法才会对它实例化。等于false时则是在main方法里去获得上下文配置的时候就对该Bean进行了实例化。体现的案例是可以在Bean中配置init-Method属性和destroy-Method属性,这两个属性值应是该Bean里的初始化方法名和销毁方法名字。
- init-Method,destroy-Method:上面对这两个属性进行了大概讲解,所有的Bean中都可以有init和destroy方法,这是Bean生命周期的一部分,这两个方法和servlet的生命周期中的初始化方法和销毁方法类似。若是想看Bean中的这两个方法的调用需要在Bean 中配置这两个属性。
- id:该Bean的唯一标识。通常用来在getBean(id)在方定位该Bean;
- name:为该Bean起名字,作用和id类似,都是用来定位该Bean的,不过name可以写多个别名中间用逗号隔开;
- class:表示实例化的是具体哪个类。如果在Bean中没有配置id和name那么该class视为默认的id
在XML中Bean注入的一些方式:
- 注入匿名的内部bean,在此举例中我们要用到<property>标签,使用该标签是需要有Set方法的。
该例子中用到了两个Bean 的实例,该例子中Stu1中已经设置了一个setFruit(Fruit fruit)方法。Fruit是个接口,Apple实现了Fruit这个接口。
-
注入集合类型属性。
3.注入null空字符串类型的属性值
4.注入复合型的属性值
5.注入外部properties文件值
如果想引用properties文件里的 内容,必须要有引入外部文件的步骤,二是建一个Java文件里面的属性和properties里的属性相对应还应生成对应的Set和get方法