欢迎您访问@Bean,你真的会用吗?!

@Bean,你真的会用吗?

更新时间:2024-04-17 19:08:11作者:佚名

一、是否使用@Bean注解的区别 1、问题发现

我一直有一个疑问。 我们都知道bean是什么意思,我们使用@Bean来教导对象或方法来管理。 但在实际使用过程中,我们发现如果单纯调用一个对象的后一个方法,不需要使用@Bean注解就可以调用。 那么如何体现对对象的控制呢? 管理方面呢?

这里,在这个类中无论有没有@Bean都可以正常使用。

2.问题分析

在上面的地方添加一个输出

添加@Bean并刷新页面几次。 后台结果如下:

可以看出,使用@Bean注解时,无论页面刷新多少次(即方法执行多少次),添加该注解的方法只在最开始(在该方法之前)执行一次。页面刷新),之后就不再执行。

不添加@Bean,多次刷新页面,后台结果如下:

可以看到,在不使用@Bean注解的情况下,方法(())只会在页面刷新时执行(即执行该方法),并且执行次数是一样的。

这样一比较,结果就很明显了。 @Bean注解的对象或者方法确实是被管理的,而且这样效率更高,因为这里也可以清楚的看到bean是什么意思,他只创建了一个对象,但是却可以使用无数次,不需要任何其他的管理。 该对象创建一次,使用一次; 通过查询,管理的对象默认是单例模式(即对象只创建一次,但可以多次使用),并且是风格。 当然,这只是有无注解的区别之一。

二、@Bean和@的对应使用 1、问题发现

众所周知,如果通过@Bean将对象交给管理,通过@实现自动装配,那么如果是不同的方法,返回类型相同,显然是不行的。

2.问题分析

让我们看看问题是什么

什么意思?

无法自动组装。 有多个 '' 类型的 bean

其实很容易理解。 你的两个返回值是一样的。 如何确定自动组装的是哪种方法?

3.问题解决方案一,同名

这种情况下,会自动根据你的自动组装对象的名称和方法名称是否一致来进行判断。 因此,这里只需要让你的自动组装方法名与托管方法名保持一致即可,如下:

方法2、@指定

使用@指定名称,如下:

方法三、@Bean主键添加属性

在@Bean()中填写name属性

方法四、使用不同的注解

例如,如果一个管理方法有多个注解,并且两者之间的注解不同,那么在自动组装时只需要编写相应的注解即可,如下:

当然,这些注解并不是随便添加的,而是根据需要添加的,所以严格来说,这并不能算是一种解决方案。

总而言之,我们使用官方的,是为了让你的自动装配对象名称与方法对象(即方法一)保持一致。 这不是最方便的吗?

三、如何运行不在启动类所在包下的文件?

众所周知,在一个项目中,默认会执行启动类所在包下的文件。 那么不在包下怎么执行呢?

方法一、使用@Bean注解

结果

方法二、@注解

当将bean交给管理时,如果该bean不在启动类的包或子包中英语作文,可以通过方法将该类导入到配置类中。

有人会说包扫描,但实际上这里最好不要使用包扫描。 涉及到最底层,大概就是默认扫描的@n注解设置。 我是新手QAQ。

@扫描没有指定,所以默认扫描当前启动类所在的包。 既然没有人指定包,我们最好不要指定它。

四、@Bean和@1.@Bean

官方解释:只有当指定的类实例对象在容器中不存在时,相应的配置才会生效。

这意味着如果该对象已经被管理,则将不再创建它。

运行结果:

可以看到还没有执行

如果没有对应的bean,则创建它

2.@

官方解释:只有指定的类实例对象存在于容器中时,相应的配置才会生效。

也就是说,只有该对象已经存在时才会被创建。 例如,连接池只有当连接池有数据对象时才会创建,否则不会创建。

为您推荐

tag就是“标签”的意思,你知道吗?

tag就是“标签”的意思,比如说有一张你的照片,那么你的朋友、熟人或者是你自己可以把你标签出来,让其他人知道照片里的人是你。一、tag是什么梗二、tag的意义

2024-04-17 09:14

第四维小狗英语词汇queen的意思是女王刘苦读成才

小狗queen的用法总结大全英语词汇queen的意思是女王,王后,杰出女性,(纸牌中的)王后,那queen的用法你们有了解吗?queen的用法总结大全queen用法queen可以用作名词queen用作名词的用法例句queen用作动词的意思是“(使…)升为后”。queen用法例句

2024-04-17 07:11

如果让上帝挑一块手表,那应该就是

如果让上帝挑一块手表,那应该就是。对于普通人来说,很有可能是我们人生中第一块手表,具有特殊的纪念意义。第一层是广为流传的“(第二)”,即“拥有了贵重腕表的你,人生中第二块手表可以是”。但如果让上帝挑一块手表,我想他会悄悄地拿起一块。

2024-04-17 07:10

十二星座最具代表性的名字,你认识几个?

比如在五月买的猫取名“五月半”。七月份买来的可以叫“小七”很有文艺气息对不对。4、这类猫咪名字是非常普遍的,比如:咪咪、小白、小黑、花花等等,或是英文名字:mimi、Coco、lily等等。猫咪公的母的都是非常可爱的,所以名字没有特别明显的界定

2024-04-16 21:18

(每日一题)230美词形容词prepconjn

add增加,添加+ition过程,状态rarrn附加。增加事实和信息来源。ADD就是就是加号键quot+quot,小键盘回车上面那个。#230d例句。联络地址,邮电信箱邮箱信箱又称邮箱,是一种人际的沟通工具。一篇报道的补充部分第三人称单数adds现在分词过去式added过去。地址的意思。

2024-04-16 21:13

2017考研英语:形近词辨析及记忆单词的用法

今天,帮帮为大家总结了考研英语真题中最常见的一些形近词辨析以及记忆形近词的方法,希望大家能够认真区分,并最终掌握这些单词的用法~希望大家能够结合例句,将这些形近词区分开来。此外,在平时做真题的过程中,大家也要有意识地积累常见易混形近词,将这些词总结在单词本中,每天多翻多看,最终攻克形近词!

2024-04-16 17:15

加载中...