带你了解Spring中bean的获取
作者:保护眼睛 发布时间:2021-10-10 09:53:10
Spring 中bean的获取
1.通过context.getbean 的方式来获取bean
ApplicationContext:是spring继BeanFactory之外的另一个核心接口或容器,允许容器通过应用程序上下文环境创建、获取、管理bean。也就是Spring中的所有的bean都是在这里管理的。
那么通过可以通过context.getbean 的方式来获取bean的时候、如何填写要获取的bean的名字呢?也就是spring容器如何给注册到容器中的bean命名呢?
AnnotationBeanNameGenerator
调用的是buildDefaultBeanName
方法
buildDefaultBeanName
方法调用的是Introspector.decapitalize
方法、也就是Introspector类中的decapitalize方法、这是JDK1.8的函数。命名的规则就是如果传入的类的名字的长度大于1的话、如果第一个和第二个字母都是大写的话、那么就返回类的名字、否则就将类的名字的首字母变为小写的字母返回.
我们可以调用这个函数来做测试:
当传入的String是User、USer、USER 、 user的时候分别返回的是user、USer、USER、user、结果也是符合我们的预期的
2.通过类型来获取注册到Spring容器中的bean
LoginController loginController1 = context.getBean(LoginController.class);
两者从Spring容器中获取的bean是同一个bean
3.也可以使用这两个注解来取出对象、也就是将这两个对象作为另外一个对象的属性的时候、可以使用这两个注解来实现取bean。
@Autowired
@Resource
使用这三种的方式获取到的bean都是同一个bean。
来源:https://blog.csdn.net/qq_45859087/article/details/119273493


猜你喜欢
- 简介相机模块库,自定义相机,通过简单的调用即可实现拍照、图片裁剪、录像及录像抓拍功能;实现图片压缩,减少图片体积;自定义相机可避免使用系统相
- 前言本篇文章讲的是Kotlin 自定义view之实现标尺控件Ruler,以选择身高、体重等。开发中,当我们需要获取用户的身高和体重等信息时,
- 一、熔断器简介微服务架构特点就是多服务,多数据源,支撑系统应用。这样导致微服务之间存在依赖关系。如果其中一个服务故障,可能导致系统宕机,这就
- 几种序列化技术:1)二进制序列化保持类型保真度,这对于在应用程序的不同调用之间保留对象的状态很有用。例如,通过将对象序列化到剪贴板,可在不同
- 本文实例为大家分享了C语言实现银行系统的具体代码,供大家参考,具体内容如下1.实现要求生成一个1000-1000000之间的随机数来代表账户
- 在C#中调用C(C++)类的DLL的时候,有时候C的接口函数包含很多参数,而且有的时候这些参数有可能是个结构体,而且有可能是结构体指针,那么
- 在 Java 中将 Object 转换为 Int我们可以使用 Object 类来引用我们在 Java 中不知道其类型的任
- 前言接着上一篇:Java Fluent Mybatis 项目工程化与常规操作详解流程篇 上仓库地址:GitHub仓库查询定义查询请求体pac
- OpenFileDialog类提供了用户打开文件的功能,它有如下属性:属性InitialDirectory:设置对话框的初始目录。Filte
- Pom文件的依赖我们进入POM文件,首先是看到的是Pom文件中的parentparent是Spring Boot的框架版本控制中心<!
- 本文实例为大家分享了C#实现猜数字游戏具体代码,供大家参考,具体内容如下给定一个0-100的随机数字猜其大小题目样式:电脑产生一个0到100
- 前言:上篇总结了下WebApi的接口测试工具的使用,这篇接着来看看WebAPI的另一个常见问题:跨域问题。本篇主要从实例的角度分享下CORS
- 用java实现循环队列的方法:1、添加一个属性size用来记录眼下的元素个数。目的是当head=rear的时候。通过size=0还是size
- Android屏蔽软键盘并且显示光标的实例详解如果是android4.0以下,那么editText.setInputType(InputTy
- 一、前言今天实现一个时钟工具,其实在之前已经完成了一个简单的时钟工具:【Unity3D应用案例系列】时钟、钟表小组件开发。那么,今天的这个小
- 方法参数public String listFireEvent(@Valid FireSearch fireSearch, Ht
- 泛型的概述和优势泛型概述泛型:是JDK5中引入的特性,可以在编译阶段约束操作的数据类型,并进行检查。泛型的格式:<数据类型>;
- 通过javamail 实现发送邮件,供大家参考,具体内容如 * 意:服务器有些端口是没有开放的 需要去开放端口。 有些邮箱是需要开启对应授权服
- 本篇开始介绍Jetpack Compose 中的修饰符Modifier。修饰符可以用来执行以下操作:更改可组合项的大小、布局、行为和外观。添
- 前言最近做一个微信公众号服务,有一些简单的图片处理功能。主要就是用户在页面操作,前端做一些立刻显示的效果,然后提交保存时后端真正修改原图。从