IOC创建对象的方式

1:使用无参构造创建对象,默认
2:使用有参构造创建对象
1:下标赋值
图片
2:通过参数名赋值
图片

DI依赖注入

1:构造器注入
2:set注入(重点)
依赖:bean对象的创建依赖于容器
注入:bean对象中的所有属性,都有容器注入

c命名和p命名空间注入

使用前需要添加 c 或 p 的第三方约束

bean的作用域

单例:默认
原型:每次从容器中get时,都会获得一个新的对象

bean的自动装配

spring会在上下文中自动寻找,并自动给bean装配属性

三种装配方式
1:在xml中显示装配
2:在Java中显示装配
3:隐式的自动装配(重要)
autowire
:byname,自动在容器上下文中查找,和自己对象set方法后面的值对应的bean id
:bytype,自动在容器上下文中查找,和自己对象属性类型相同的bean
resource
:

使用注解自动装配

导入约束
配置注解的支持:context:annotation-config(重要)
图片

@autowire
@resource

@component(组件) :这个类 相当于注册了一个bean交给spring容器管理

衍生注解(等价于@component)
dao @repository
service @service
controller @controller

AOP

代理模式(AOP的底层原理)
静态代理模式