1.Spring的bean管理(xml方式)
1.1Bean实例化的方式:
在spring里面通过配置文件创建对象
bean实例化三种方式实现
第一种 使用类的无参数构造创建(重点)
没有无参数的构造会出现异常
第二种 使用静态工厂创建
创建静态的方法,返回类对象
第三种 使用实例工厂创建
创建不是静态的方法,返回类对象
2.Bean标签的常用属性:
id属性:起名称,id属性值名称任意命名
-id属性值,不能包含特殊符号
-根据id值得到配置对象
class属性:创建对象所在类的全路径
name属性:功能和id属性是一样的,id属性值不能包含特殊符号,但是在name属性值里面可以包含特殊符号
scope属性:
-singleton:默认值,单例;
-prototype:多例;
-request:创建对象,把对象放到request域里面
-session:创建对象,把对象放到session域里面
-globalSession:创建对象,把对象放到globalSession域里面(关于单点登录)
3.属性注入:
3.1 属性注入的方式介绍(三种方式):
使用set方法注入
使用有参数构造注入
使用接口注入
在spring框架里面,只支持前两种方式。
3.2 注入对象类型属性(重点):
1 创建service类和dao类
在service得到dao对象
2 具体实现过程
在service里面把dao作为类型属性
生成dao类型属性的set方法
3 配置文件中完成注入关系
3.3 P名称空间注入:
3.4 注入复杂类型属性:
1 数组
2 list集合
3 map集合
4 properties类型
4.IOC和DI区别:
IOC:控制反转,把对象创建交给spring进行配置
DI:依赖注入
关系:依赖注入不能单独存在,需要在ioc基础之上完成操作
5.Spring整合web项目原理:
1 加载spring核心配置文件
new对象,功能可以实现,效率很低
2 实现思想:把加载配置文件和创建对象过程,在服务器启动时候完成
3 实现原理
--ServletContext对象
--监听器
4 具体使用
-在服务器启动时候,为每个项目创建ServletContext对象
-在ServletContext对象创建的时候,使用监听器可以具体到ServletContext对象在什么时候创建
-使用监听器监听到ServletContext对象创建的时候
-加载spring配置文件,把配置文件配置对象创建
-把创建出来的对象放到ServletContext域对象里面(setAttribute方法)
-获取对象时候,到ServletContext域得到(getAttribute方法)