Spring一站式框架:仅用spring就可以完成一个web项目的开发(正是因为spring框架性质是属于容器性质的,容器中装什么对象就有什么功能)
Spring不仅不排斥其它框架,还能帮其它框架管理对象
Spring框架搭建
3:属性配置注册对象到容器(spring配置文件名称与放置位置任意,建议以applicationContext.xml放到src下)
运行结果部位空,则配置成功
IOC:(Inverse of Control)反转控制:
DI:Dependency Injection 依赖注入
接口介绍:
1:BeanFactory是一个接口:
spring最原始的接口(过时),针对源氏接口的实现类功能较为单一
BeanFactory接口实现类的容器特点:每次在获得对象时才会创建对象
2:ApplicationContext:每次容器启动时就会配置容器中所有对象,提供了更多功能
总结:
ApplicationContext的两个典型的实现类:
bean元素相关的配置:
spring创建对象的三种方式
方式一(重点):
方式二:静态工厂(了解),创建对象使用的是静态方法通过对象名调用即可
方式三:实例工厂(了解)调用需要需要先创建UserFactory对象才能执行createUser2方法
Bean元素配置进阶scope属性(4个属性值可选):
生命周期属性:
spring的分模块配置:即可以在一个主配置文件中引入其它配置文件
resource中填写其它配置文件的路径(src之后的路径)
spring属性注入(关键)
1:set方法(重点)
set方式中的对象注入:
2:构造函数注入
第二种:位置变了
用于指定使用那个构造函数
第三种:
表示要运行一个参数名为name并且类型是Integer的
3:p名称空间注入(本质还是走set方法)
需要导入p名称空间
4:spel注入(Spring Expression Language)
复杂类型注入
管理容器在项目中的生命周期:
总结: