一、查询代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
private static ApplicationContext ctx;
 
 
public static void main(String[] args) {
       try {
 
 
           ctx = new ClassPathXmlApplicationContext(
                   new String[]{
                           "classpath:spring/spring-dao.xml",
                           "classpath:spring/spring-biz.xml",
                           "classpath:spring/spring-service.xml",
                           "classpath:spring/spring.xml"
                   });
 
           listAllSpringBeans();
           
       } catch (Exception e) {
           e.printStackTrace();
         
       }
    }
 
   private static void listAllSpringBeans() {
       String[] beanNames = ctx.getBeanDefinitionNames();
       int allBeansCount = ctx.getBeanDefinitionCount();
 
       System.out.println("所有beans的数量是:" + allBeansCount);
       for (String beanName : beanNames) {
           Class<?> beanType = ctx.getType(beanName);
           Package beanPackage = beanType.getPackage();
 
           Object bean = ctx.getBean(beanName);
 
           System.out.println("BeanName:" + beanName);
           System.out.println("Bean的类型:" + beanType);
           System.out.println("Bean所在的包:" + beanPackage);
 
           System.out.println("\r\n");
       }
   }

二、查询结果

所有beans的数量是:32

BeanName:org.springframework.context.support.PropertySourcesPlaceholderConfigurer#0

Bean的类型:class org.springframework.context.support.PropertySourcesPlaceholderConfigurer

Bean所在的包:package org.springframework.context.support

BeanName:dataSource

Bean的类型:class com.alibaba.druid.pool.DruidDataSource

Bean所在的包:package com.alibaba.druid.pool

BeanName:sqlSessionFactory

Bean的类型:class org.apache.ibatis.session.defaults.DefaultSqlSessionFactory

Bean所在的包:package org.apache.ibatis.session.defaults, mybatis, version 3.3.1

BeanName:org.mybatis.spring.mapper.MapperScannerConfigurer#0

Bean的类型:class org.mybatis.spring.mapper.MapperScannerConfigurer

Bean所在的包:package org.mybatis.spring.mapper, mybatis-spring, version 1.2.3

BeanName:transactionManager

Bean的类型:class org.springframework.jdbc.datasource.DataSourceTransactionManager

Bean所在的包:package org.springframework.jdbc.datasource

BeanName:txAdvice

Bean的类型:class org.springframework.transaction.interceptor.TransactionInterceptor

Bean所在的包:package org.springframework.transaction.interceptor

BeanName:org.springframework.aop.config.internalAutoProxyCreator

Bean的类型:class org.springframework.aop.aspectj.autoproxy.AspectJAwareAdvisorAutoProxyCreator

Bean所在的包:package org.springframework.aop.aspectj.autoproxy

BeanName:manager

Bean的类型:class org.springframework.aop.support.DefaultBeanFactoryPointcutAdvisor

Bean所在的包:package org.springframework.aop.support

BeanName:org.springframework.transaction.config.internalTransactionalEventListenerFactory

Bean的类型:class org.springframework.transaction.event.TransactionalEventListenerFactory

Bean所在的包:package org.springframework.transaction.event

BeanName:org.springframework.transaction.annotation.AnnotationTransactionAttributeSource#0

Bean的类型:class org.springframework.transaction.annotation.AnnotationTransactionAttributeSource

Bean所在的包:package org.springframework.transaction.annotation

BeanName:org.springframework.transaction.interceptor.TransactionInterceptor#0

Bean的类型:class org.springframework.transaction.interceptor.TransactionInterceptor

Bean所在的包:package org.springframework.transaction.interceptor

BeanName:org.springframework.transaction.config.internalTransactionAdvisor

Bean的类型:class org.springframework.transaction.interceptor.BeanFactoryTransactionAttributeSourceAdvisor

Bean所在的包:package org.springframework.transaction.interceptor

BeanName:gossip.dub.service

Bean的类型:class com.alibaba.dubbo.config.ApplicationConfig

Bean所在的包:package com.alibaba.dubbo.config, Dubbo, version 2.5.3

BeanName:com.alibaba.dubbo.config.RegistryConfig

Bean的类型:class com.alibaba.dubbo.config.RegistryConfig

Bean所在的包:package com.alibaba.dubbo.config, Dubbo, version 2.5.3

BeanName:dubbo

Bean的类型:class com.alibaba.dubbo.config.ProtocolConfig

Bean所在的包:package com.alibaba.dubbo.config, Dubbo, version 2.5.3

BeanName:org.gossip.dub.facade.ISeckillService

Bean的类型:class com.alibaba.dubbo.config.spring.ServiceBean

Bean所在的包:package com.alibaba.dubbo.config.spring, Dubbo, version 2.5.3

BeanName:seckillService

Bean的类型:class org.gossip.dub.service.impl.SeckillService

Bean所在的包:package org.gossip.dub.service.impl

BeanName:org.gossip.dub.facade.ISysAdminInfoService

Bean的类型:class com.alibaba.dubbo.config.spring.ServiceBean

Bean所在的包:package com.alibaba.dubbo.config.spring, Dubbo, version 2.5.3

BeanName:sysAdminInfoService

Bean的类型:class org.gossip.dub.service.impl.SysAdminInfoService

Bean所在的包:package org.gossip.dub.service.impl

BeanName:seckillManager

Bean的类型:class org.gossip.dub.manager.SeckillManager$$EnhancerBySpringCGLIB$$2144142f

Bean所在的包:package org.gossip.dub.manager

BeanName:sysAdminInfoManager

Bean的类型:class org.gossip.dub.manager.SysAdminInfoManager$$EnhancerBySpringCGLIB$$c2215ec8

Bean所在的包:package org.gossip.dub.manager

BeanName:org.springframework.context.annotation.internalConfigurationAnnotationProcessor

Bean的类型:class org.springframework.context.annotation.ConfigurationClassPostProcessor

Bean所在的包:package org.springframework.context.annotation

BeanName:org.springframework.context.annotation.internalAutowiredAnnotationProcessor

Bean的类型:class org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor

Bean所在的包:package org.springframework.beans.factory.annotation

BeanName:org.springframework.context.annotation.internalRequiredAnnotationProcessor

Bean的类型:class org.springframework.beans.factory.annotation.RequiredAnnotationBeanPostProcessor

Bean所在的包:package org.springframework.beans.factory.annotation

BeanName:org.springframework.context.annotation.internalCommonAnnotationProcessor

Bean的类型:class org.springframework.context.annotation.CommonAnnotationBeanPostProcessor

Bean所在的包:package org.springframework.context.annotation

BeanName:org.springframework.context.event.internalEventListenerProcessor

Bean的类型:class org.springframework.context.event.EventListenerMethodProcessor

Bean所在的包:package org.springframework.context.event

BeanName:org.springframework.context.event.internalEventListenerFactory

Bean的类型:class org.springframework.context.event.DefaultEventListenerFactory

Bean所在的包:package org.springframework.context.event

BeanName:org.springframework.context.annotation.ConfigurationClassPostProcessor.importAwareProcessor

Bean的类型:class org.springframework.context.annotation.ConfigurationClassPostProcessor$ImportAwareBeanPostProcessor

Bean所在的包:package org.springframework.context.annotation

BeanName:org.springframework.context.annotation.ConfigurationClassPostProcessor.enhancedConfigurationProcessor

Bean的类型:class org.springframework.context.annotation.ConfigurationClassPostProcessor$EnhancedConfigurationBeanPostProcessor

Bean所在的包:package org.springframework.context.annotation

BeanName:ISecKillMapper

Bean的类型:interface org.gossip.dub.dao.ISecKillMapper

Bean所在的包:package org.gossip.dub.dao

BeanName:ISuccessKilledMapper

Bean的类型:interface org.gossip.dub.dao.ISuccessKilledMapper

Bean所在的包:package org.gossip.dub.dao

BeanName:ISysAdminInfoMapper

Bean的类型:interface org.gossip.dub.dao.ISysAdminInfoMapper

Bean所在的包:package org.gossip.dub.dao


 

 

 

 

SpringBean_获取Spring加载的所有bean(实践)的更多相关文章

  1. Dubbo实践(六)Spring加载Bean流程

    根据上一小节对于spring扩展schema的介绍,大概可以猜到dubbo中相关的内容是如何实现的. 再来回顾Dubbo实践(一)中定义的dubbo-provider.xml: <?xml ve ...

  2. Spring加载流程源码分析03【refresh】

      前面两篇文章分析了super(this)和setConfigLocations(configLocations)的源代码,本文来分析下refresh的源码, Spring加载流程源码分析01[su ...

  3. Spring加载properties文件的两种方式

    在项目中如果有些参数经常需要修改,或者后期可能需要修改,那我们最好把这些参数放到properties文件中,源代码中读取properties里面的配置,这样后期只需要改动properties文件即可, ...

  4. spring加载jar包中多个配置文件(转)

    转自:http://evan0625.iteye.com/blog/1598366 在使用spring加载jar包中的配置文件时,不支持通配符,需要一个一个引入,如下所示: Java代码 <co ...

  5. 【Spring 源码】Spring 加载资源并装配对象的过程(XmlBeanDefinitionReader)

    Spring 加载资源并装配对象过程 在Spring中对XML配置文件的解析从3.1版本开始不再推荐使用XmlBeanFactory而是使用XmlBeanDefinitionReader. Class ...

  6. 监听spring加载完成后事件

    有这个想法是在很早以前了,那时的我没有接触什么缓存技术,只知道hibernate有个二级缓存.没有用过memcache,也没有使用过redis. 只懂得将数据放到数组里或者集合里,一直不去销毁它(只有 ...

  7. spring加载资源文件中classpath*与classpath的区别

    在spring和MyBatis继承的时候,配置mapperLocations.一开始配置是这样的. 需要加载路径为com/thomas/base/mapper和com/thomas/bu/mapper ...

  8. 【Java Web开发学习】Spring加载外部properties配置文件

    [Java Web开发学习]Spring加载外部properties配置文件 转载:https://www.cnblogs.com/yangchongxing/p/9136505.html 1.声明属 ...

  9. spring加载配置文件

    spring加载配置文件 1.把applicationContext.xml直接放在WEB-INF/classes下,spring会采用默认的加载方式2.采用在web.xml中配置ContextLoa ...

随机推荐

  1. [css]我要用css画幅画(四)

    接着之前的[css]我要用css画幅画(三), 今天,我画了两朵云,并给小明介绍了个朋友:静静. github:https://github.com/bee0060/Css-Paint , 完整代码在 ...

  2. 【scikit-learn】scikit-learn的线性回归模型

     内容概要 怎样使用pandas读入数据 怎样使用seaborn进行数据的可视化 scikit-learn的线性回归模型和用法 线性回归模型的评估測度 特征选择的方法 作为有监督学习,分类问题是预 ...

  3. 将ASP.NET Core应用程序部署至生产环境中(CentOS7)

    这段时间在使用Rabbit RPC重构公司的一套系统(微信相关),而最近相关检验(逻辑测试.压力测试)已经完成,接近部署至线上生产环境从而捣鼓了ASP.NET Core应用程序在CentOS上的部署方 ...

  4. 如何查看Oracle客户端版本

    在实际工作中,总会遇到一些需要查看.验证ORACLE客户端版本的问题,因为一台服务器可能装了多个Oracle客户端版本:也有可能你需要知道安装的版本是32位还是64位的.如何查看Oracle客户端(O ...

  5. crontab设置作业间隔执行问题

    这个源于有个网友问,crontab里   */40  9  *  *  *  是不是代表9点开始每40分钟执行?  直觉这个肯定不是从9:00开始每隔40分钟执行一次,但是也不能肯定它代表一个什么样的 ...

  6. Linux命令学习总结:chage

    命令简介: 该命令用于密码时效管理.它可以修改账号和密码的有效期.对于chage命令的描述如下所示: The chage command changes the number of days betw ...

  7. PyCharm创建virtualenv方法

    Python的版本众多,在加上适用不同版本的Python Package.这导致在同时进行几个项目时,对库的依赖存在很大的问题.这个时候就牵涉到对Python以及依赖库的版本管理,方便进行开发,vir ...

  8. mysql修改数据库编码(数据库字符集)和表的字符编码的方法

    Mysql数据库是一个开源的数据库,应用非常广泛.以下是修改mysql数据库的字符编码的操作过程和将表的字符编码转换成utf-8的方法,需要的朋友可以参考下. mysql将表的字符编码转换成utf-8 ...

  9. java HashMap

    HashMap 的性能因子 1. 容量:表示桶位的数量. 2. 初始容量: 表在创建是所拥有的桶位数.   如果你知道将要在HashMap存储多少项,创建一个初始容量合适的HashMap将可以避免自动 ...

  10. Caffe 单独测试添加的layer

    转载请注明出处,楼燚(yì)航的blog,http://home.cnblogs.com/louyihang-loves-baiyan/ 一般我们在使用Caffe的时候,可能需要根据自己的任务需求添加 ...