00:00
好,我们上一节课呢,看了一下这个at out使用,那么spring呢,在自动注入的时候,除过用这个OUT3的,你可以来说一下spring还支持,哎,支持使用resource解,哎,这是咱们在GSR250规范里边定义的,和咱们这个injt解,这是GSR330的规范,比如说呢,这两个注解也是会得到支持,我们可以用一下resource来试一下,只不过这两个注解呢,这都是Java规范,而O这是咱们这个spring的注解,这两个呢,都是Java规范的注解。
01:00
那斯文当然也支持这些规范标准了,我们可以来试一下,来到book service里边,好,Book service呢,我们把这个O注,我们不用它了,哎,Fair呢也注,这个fair是spring的注解,哎,它结合O一起使我们用这个S也能完成自动注入,类似于O一样,我们来可以试一下,走诶大家来看也是没问题的,只不过大家注意,现在自动装配的是不可丢一,而不是我们所说的这个应该优先装配的,这个不可DO2,哎,这就是它的这个啊,一个小缺点是吧,它是咱们这个Java规范,Java规范里边说的,所以说spring对他的支持呢,他可以和咱们这个O一样都来进行。
02:00
自动装配,实现自动装配功能,但是呢,我们这个注解默认是按照咱们这个组件名称进行装配的,就说呢,为什么它装配了这个第一个顾客do,这就是因为这个resource这边,哎,它默认是按照这个啊属性的名称作为组件名装配的,当然呢,我们也可以在这改用name name,我们来说book do,这样的话呢,是来装配book do。哎,我们来看这是二,就说呢,我们都是按名称装配的,它也不能结合也没有的这些这些属性,所以说这是咱们这个啊G250里的resource,虽然呢,它能完成这个功能,但是呢,它却啊没有没有呢支持的这个功能,以及没有支持咱们这个owa里边有等于false等等这些功能,等于false同呢没有支持这个功能的,这是at resource,那么呢,我们还有一个注解叫at inject,这也会被得到支持,这是GSR330里边的注解,那这个注解要使用的话呢,我们还得导上一个依赖,在me问中呢,我们来找一下一个叫X。
03:37
Inject需要导入这个依赖,好我们就来找中央仓库的这个,我们把这个依赖呢导进来,我们这个注解就能用。好点来。好,我们来测试一下这个注解,来到book service里边也不用resource了,我们来用这个injt注解in这个主体,那么呢,它的功能跟owa哎也都是一样的,来测试走,诶现在大家看,而且呢,默认还有an primary的特性,哎,默认装配咱们这个二,而且呢,下面这个日志大家也注意,它只要找到了这个injt注解,也就说呢,它是一样来支持咱们这个自动装配的,也就说我们自动装配的这些特性也都是能用的,而这个inject也是能使用。
04:35
只不过呢,先需要导入JAYX,您这个的的这个包和o toy o功能一样,只不过呢,也注意啊,这个in这呢跟owa不同的是,你看这个in这里面是没啥属性啊,而我们这个O,这个owa呢,它里边至少能调一个等于false,所以说呢,这就是这几种的使用,那么之前呢,啊,网上经常在讨论,到底用这个resource呢,还是inj呢,还是owa呢?啊,这个区别大家就看出来了,这resource injt其实都能进行自动,只不过resource呢不能支持更多的这个功能了,比如这个primary,那这呢跟O一样,虽然能支持primary,但是呢,它却没有这个等于force的功能。
05:36
没有等于,不过他们的区别O这是这是定义,而我们这个resource跟int,这都是Java的规范。都是咱们这个Java规范要说呢,有人去来说这个,因Java其他该支持用这个呢,这是spring框架自己的,如果脱离了spring框架,别的框架不来做O这个注解的支持,那可能是没法用的,但是呢,虽说是这么说,哎。
06:31
至于它们的这个区别,我们已经演示在这儿了,哎,我还是推荐大多来使用owa,毕竟结合后边的primary这些功能,哎,我们这个spring解析是非常强大的,所以说这就是我们,哎其他这几个自动注入注解的用法,大家看一下,而这些自动注入注解啊,为什么能生效完成自动注入功能呢?其实我们之前已经说过了,就是呢,包括我们来看控制台的日志,哎,这个日志呢,它打印了一个东西叫说o not being post processor,也就说其实就是它。
07:08
这个being post processor,它是来解析完成自动装配功能,然后呢,它来解析这些at resource注解,And inject以及owa注解,完成自动装配,这个processor呢,我们可以进去来看,哎,它有支持owa value,包括呢,还能支持哎,我们这个上面说的,诶,还有这个lookup,或者咱们说的呃,再往前边这个inject等等,他就是来支持这个,当然里边的这些细节大家呢,自己也可以打个断点再来看一下,那么之前呢,把这个后置处理器,哎,它是一个后置处理器,后置处理器的工作原理我们已经都说过了,有兴趣的同学可以进去再看一下它里边的细节。
我来说两句