带你了解Spring中bean的获取

作者:保护眼睛 时间:2021-10-10 09:53:10 

Spring 中bean的获取

1.通过context.getbean 的方式来获取bean
ApplicationContext:是spring继BeanFactory之外的另一个核心接口或容器,允许容器通过应用程序上下文环境创建、获取、管理bean。也就是Spring中的所有的bean都是在这里管理的。
带你了解Spring中bean的获取

那么通过可以通过context.getbean 的方式来获取bean的时候、如何填写要获取的bean的名字呢?也就是spring容器如何给注册到容器中的bean命名呢?

AnnotationBeanNameGenerator调用的是buildDefaultBeanName 方法

带你了解Spring中bean的获取

带你了解Spring中bean的获取

buildDefaultBeanName方法调用的是Introspector.decapitalize方法、也就是Introspector类中的decapitalize方法、这是JDK1.8的函数。命名的规则就是如果传入的类的名字的长度大于1的话、如果第一个和第二个字母都是大写的话、那么就返回类的名字、否则就将类的名字的首字母变为小写的字母返回.

带你了解Spring中bean的获取

我们可以调用这个函数来做测试:

带你了解Spring中bean的获取

当传入的String是User、USer、USER 、 user的时候分别返回的是user、USer、USER、user、结果也是符合我们的预期的

带你了解Spring中bean的获取

2.通过类型来获取注册到Spring容器中的bean
LoginController loginController1 = context.getBean(LoginController.class);
带你了解Spring中bean的获取
带你了解Spring中bean的获取

两者从Spring容器中获取的bean是同一个bean

3.也可以使用这两个注解来取出对象、也就是将这两个对象作为另外一个对象的属性的时候、可以使用这两个注解来实现取bean。
@Autowired
@Resource
带你了解Spring中bean的获取
使用这三种的方式获取到的bean都是同一个bean。
带你了解Spring中bean的获取

来源:https://blog.csdn.net/qq_45859087/article/details/119273493

标签:Spring,bean,获取
0
投稿

猜你喜欢

  • java页面中文乱码的解决办法

    2022-09-01 22:59:20
  • Android采取ContentObserver方式自动获取验证码

    2023-07-31 16:20:48
  • Java 读写锁实现原理浅析

    2023-02-02 06:28:53
  • C# FileStream简单介绍和使用

    2023-07-05 23:04:05
  • Android用过TextView实现跑马灯效果的示例

    2023-07-27 11:16:54
  • Java 中ThreadLocal类详解

    2022-01-31 19:58:17
  • resty mail的简单发送邮件方法

    2021-09-15 06:00:14
  • 解决IntelliJ IDEA中鼠标拖动选择为矩形区域问题

    2022-04-03 21:08:51
  • 实例详解SpringBoot默认的JSON解析方案

    2023-07-21 07:34:20
  • SpringBoot项目的logback日志配置(包括打印mybatis的sql语句)

    2021-08-24 02:15:22
  • Java实现打字游戏

    2021-11-02 16:46:56
  • Maven打包没有指定主类问题(xxx.jar中没有主清单属性)

    2023-11-26 21:34:44
  • SpringBoot整合MongoDB的步骤详解

    2023-10-11 17:20:32
  • 浅谈Spring中Bean的作用域、生命周期

    2023-11-14 02:44:21
  • Spring Security认证提供程序示例详解

    2022-11-07 18:06:40
  • springboot集成fastDfs过程代码实例

    2023-02-21 19:42:20
  • java 中 poi解析Excel文件版本问题解决办法

    2023-11-15 16:49:45
  • C++ Boost MPI接口详细讲解

    2023-11-02 13:35:36
  • android6.0权限动态申请框架permissiondispatcher的方法

    2023-07-31 10:51:57
  • Java DecimalFormat 保留小数位及四舍五入的陷阱介绍

    2023-11-09 04:49:33
  • asp之家 软件编程 m.aspxhome.com