一,Bean标签
1,bean标签id属性:为Bean标签自定义名称,但是不能使用特殊符号。在代码中可以根据id值获取到对象
2,bean标签class属性:代表对应类的全路径
3,bean标签scope属性:
singleton:默认值,表示单例
prototype:多例
request:WEB项目中,Spring创建一个Bean对象,将Bean对象放入request域中。
session:WEB项目中,Spring创建一个Bean对象,将Bean对象放入session域中。
4,bean标签lazy属性
默认情况下启动程序时对象就直接创建了
当加入lazy-init=“true”之后使用者取对象时才会创建
二,Spring实例化Bean的三种方式【了解】
在spring中,通过配置文件创建对象就叫做Bean实例化,Bean实例化一共3种方式:
1,使用类中的无参构造方法【重点掌握】
注意:如果类中没有无参构造会产生异常。
2 用静态工厂创建UserFactory
创建静态方法,返回类对象
修改配置文件获取对象的方式
3 用实例工厂创建UserFactory
创建不是静态方法,返回类对象
修改配置文件获取对象
三,Bean属性注入
1,常见的属性注入方式
setXX方法注入
使用有参构造方法注入
接口注入【了解】
2,set方式注入
如果里面有单个的Date属性如何注入呢?
3,有参构造方法注入
Person
测试
4,集合和数组属性注入
Animal
applicationContext.xml
测试
四,spring模块化配置
在开发中,我们一般会分模块去管理我们的spring xml文件,
dao放到app_dao.xml里面
service放到app_service.xml里面
action放到app_action.xml里面
五,IOC和DI的区别【重点理解】
IOC:控制反转,把对象的创建交给spring进行创建
DI:依赖注入,向类中的属性设置值
关系:依赖注入(DI)不能单独存在,需要在控制反转(IOC)的基础之上完成功能。