2020-12-07 Spring-IOC
七大模块:
java开发:
IOC思想:
本质:
依赖注入
构造器注入
IOC创建对象的方式:
1、使用无参构造创建对象,默认
2、使用有参构造创建对象的三种方式
在xml中注册类,每写一个类都要进行注册,在配置文件加载的时候,容器中管理的对象就已经初始化了。
测试类:
hello类:a
设置对象:
获取对象(通过配置文件拿):
如果要修改数据,则只需要更改配置的xml文件
其他配置:
别名alias:
bean:
import:
Set方式注入(重点)
依赖注入,核心就是set注入。
1.依赖:bean对象的创建依赖于容器
2.注入:bean对象中的所有属性,由容器来注入
测试类:
三种注入方式:
用set注入,必须要有 他的set方法
p命令空间注入,可以直接注入值
C命令空间注入
要使用p命名和c命名要先导入这两行xml约束
Bean的作用域
Bean的自动装配
自动装配是Spring满足bean依赖的一种方式
Spring会在上下文中自动寻找,并自动给bean装配属性!
测试例子:
xml文件
测试类:
自动装配:
autowire=“byName”
autowire=“byType”
使用注解实现自动装配
一般会用@Autowired
使用前提:在xml中开启注解的支持
@Autowired
在类中定义属性的前面加上@Autowired即可,也可以在set方法上使用【如果有了注解,在类中set方法可以不写,前提是你这个自动装配的属性在IOC(Spring)容器中存在且符合名字byname】
科普:
@Nullable,可以使内容为空
@Autowired(required=false);如果显示定义了Autowired的required属性为false,说明这个对象可以为null,否则不允许为空;
@Qualifier指定实现Autowired装配的值
以上注解是Spring的注解,而Java自带的注解@Resource会先通过名字匹配,如果名字找不到,会通过类型匹配。如果两个都找不到才会报错。
精确查找:
两者区别
使用注解开发
1、
使用@Component就可以不用注册bean
2、
如果使用简单的可以使用注解,复杂的推荐还是使用xml中书写。
使用java的方式配置Spring
实体类:
配置类:
测试类:
这种纯java的配置方式,在springboot中随处可见!
本文地址:https://blog.csdn.net/weixin_44086012/article/details/110791119