为了账号安全,请及时绑定邮箱和手机立即绑定

Spring:获取容器中的Bean

标签:
Spring
  • 某些情况下我们要获取 IOC 容器中指定注解、类型、名字的 Bean

  • 要获取 IOC 容器中指定条件的 Bean 可以通过 ApplicationContext 相应的方法

@Autowiredprivate ApplicationContext applicationContext;

获取指定注解所有的 Bean

Map<String,Object> objectMap = applicationContext.getBeansWithAnnotation(Service.class);

获取指定注解所有的 Bean 的名字

String[] beanNames = applicationContext.getBeanNamesForAnnotation(Service.class);

获取容器中指定某类型、或实现某接口、或继承某父类所有的 Bean

Map<String, Test> objectMap = applicationContext.getBeansOfType(Test.class);

获取容器中指定某类型、或实现某接口、或继承某父类所有的 Bean 的名称

String[] beanNames = applicationContext.getBeanNamesForType(Service.class);

获取指定名字的 Bean

Test testbean = (Test)applicationContext.getBean("testbean");

获取指定名字、类型的 Bean,指定的类型可以是其父类或所实现的接口

Object object = applicationContext.getBean("testbean", TestInterface.class);

获取指定类型、或接口、或某类的子类的 Bean

Object object = applicationContext.getBean(TestInterface.class);

获取容器中 Bean 的数量

int beanCount = applicationContext.getBeanDefinitionCount();

获取容器中所有 Bean 的名字

String[] beanNames = applicationContext.getBeanDefinitionNames();



作者:林塬
链接:https://www.jianshu.com/p/5e97109b479f


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消