转载:http://blog.csdn.net/cuixuefeng1112/article/details/45331233

/**
 * 扫描注解添加服务到缓存以供判断时候为对外开放service
 */
@Component
@Lazy(true)
class AnnotationScannerConfigurer implements BeanDefinitionRegistryPostProcessor {
    
ArrayList<String> cache=RemoteCache.getCache();

@Override
    public void postProcessBeanDefinitionRegistry(BeanDefinitionRegistry beanDefinitionRegistry) throws BeansException {
    }
    @Override
    public void postProcessBeanFactory(ConfigurableListableBeanFactory postProcessBeanFactory) throws BeansException {
         Map<String, Object> map=configurableListableBeanFactory.getBeansWithAnnotation(RemoteTag.class);
         for (String key : map.keySet()) {
        cache.add(key);
            //System.out.println("beanName= "+ key );
         }
    }
}

我的AnnotationScannerConfigurer  实现了BeanDefinitionRegistryPostProcessor
,spring启动时会执行postProcessBeanFactory方法,通过postProcessBeanFactory我们就可以拿到@RemoteTag所修饰的bean了。然后随你怎么操作。

使用BeanDefinitionRegistryPostProcessor 是从mybaties的spring扫描实现类得到灵感的。

注意:@Lazy(true)是因为最后加载才能确保把所有@RemoteTag修饰的bean得到并进行操作。

SpringBoot:已经找到方法了。我用的是继承ApplicationListener<ContextRefreshedEvent>
然后用event.getApplicationContext().getBeansWithAnnotation(TableBind.class);即可
多谢大家

最新文章

  1. IT菜鸟的生存指南(三)流行还是经典
  2. 转:ADO.NET连接字符串
  3. 【转载】pyqt QTableWidget的使用
  4. NUC_HomeWork1 -- POJ1068
  5. bicycle
  6. 初遇sql server
  7. java集合 collection-list-ArrayList 去除ArrayList集合中的重复元素。
  8. cf702A Maximum Increase
  9. 【bzoj1103】【POI2007】【大都市】(树状数组+差分)
  10. Nginx的虚拟主机配置
  11. 【原创】大叔问题定位分享(19)spark task在executors上分布不均
  12. Xgboost_sklearn代码Demo
  13. [android] 采用断点调试的方式观察pull解析的流程
  14. CentOS7使用yum命令安装Java1.8
  15. mybatis 3.2.*打印sql结果集
  16. JS跨域设置和取Cookie
  17. XWindow、Server、Client和QT、GTK之间的关系
  18. Erlang Trace机制
  19. TensorFlow入门:线性回归
  20. Docker安装ShowDoc

热门文章

  1. POJ 3641 Pseudoprime numbers (miller-rabin 素数判定)
  2. jQuery中四种事件监听的区别
  3. Scrapy发送POST请求
  4. 洛谷 P2614 计算器弹琴
  5. HTML5吃豆豆游戏开发实战(一)使用Canvas绘制游戏主角
  6. poj2243 &amp;amp;&amp;amp; hdu1372 Knight Moves(BFS)
  7. [c++]基类对象作为函数參数(赋值兼容规则)
  8. 关于ajax访问express服务器的跨域问题
  9. pipPython运维日记
  10. WPF框架ZFS