能够创建对象的注解一共有三个,第一个是Component,第二个是Respotory,第三个是Service,第四个是:Controller
四种注解类方式创建对象时的区别:
一、首先我们介绍使用Component来创建对象
1、首先配置pom文件加载依赖
2、 第二步:写一个类,给一个类上写上注解
3、指定一个组件扫描器(告诉框架到哪找注解)
4、创建容器调用注解对象
对于注解获取对象的几个变形
A、对类的命名时不同的几种方式
1、 注解类中省略value关键字直接将名字写到后面括号里:(最常用的工作方法)
2、不指定对象名称,由spring提供默认名称
B、使用bean文件指定扫描的类文件时(上面Component创建对象的第三步)的三种指定包的的方式
二、使用给一个类属性赋值:
A、首先使用@value的方式给类的简单类型属性赋值
第一种方式,直接在属性变量上边写@value来改变属性值
第二种方式
在set方法上使用@value的方式来改变属性值
B、首先使用@Autowired的方式给类的引用类型属性赋值
1、使用ByType的方式进行自动注入
首先需要在引用类型中使用@Component来创建一个同源对象,使用同源对象来进行引用数据类型属性赋值。
然后在引用属性上面加上Autowired(相当于是创建了一个school中放到容器中,里面的属性已经附好值了,只要用一个程序使用school类型来定义属性,容器就会把创建好的对象赋值给引用数据类型)
第二种方式也可以使用bean标签创建同源对象
2、使用ByType的方式进行自动注入
首先创建一个同源的school对象
然后使用这个school对象的名字注入给student中的schoo属性
当Require为false时即使源对象的名字指定错误也不会报错,只是引用数据类型属性赋值为null
赋值结果
总结: