Tornado
ListableBeanFactory在BeanFactory的位置见《Spring源码阅览——BeanFactory体系结构》
ListableBeanFactory:同样扩展BeanFactory使其支持迭代Ioc容器持有的Bean对象。注意如果ListableBeanFactory同时也是HierarchicalBeanFactory,那么大多数情况下,只迭代当前Ioc容器持有的Bean对象,不会在体系结构中想父级递归迭代。具体情况请看API说明。
package org.springframework.beans.factory; /**
* 该接口是对BeanFactory的扩展,允许预加载bean定义的BeanFactory可以实现此接口
* 其目的在于使实现它的BeanFactory能够枚举所有的Bean
* 该接口不支持分层结构(对于继承了HierarchicalBeanFactory的BeanFactory来说)
* 也即该接口只能枚举当前facotry的Bean
* 除getBeanNamesOfType,getBeansOfType方法外,其他方法也将忽略由SingletonBeanRegistry的方法
* 注册的Singleton Bean
* 除getBeanDefinitionCount和containsBeanDefinition外的方法不要频繁使用,性能很慢
*/
public interface ListableBeanFactory extends BeanFactory { /**
* 根据给出的BeanName判断是否包含该Bean定义
* 该接口不支持分层结构(对于继承了HierarchicalBeanFactory的BeanFactory来说)
* 也即该接口只能枚举当前facotry的Bean 忽略由SingletonBeanRegistry的方法 注册的Singleton Bean
*/
boolean containsBeanDefinition(String beanName); /**
* 返回Bean定义的数目 该接口不支持分层结构(对于继承了HierarchicalBeanFactory的BeanFactory来说)
* 也即该接口只能枚举当前facotry的Bean 忽略由SingletonBeanRegistry的方法 注册的Singleton Bean
*/
int getBeanDefinitionCount(); /**
* 返回所有Bean的BeanName组成的String数组
*/
String[] getBeanDefinitionNames(); /**
* 根据提供的类型返回匹配的BeanName数组 只检测顶层Bean,忽略嵌套Bean
* 对于FactoryBean,当提供的类型匹配FactoryBean.getObjectType时返回BeanName
* 当提供的类型匹配FactoryBean时返回&BeanName
* 该接口不支持分层结构(对于继承了HierarchicalBeanFactory的BeanFactory来说)
* 也即该接口只能枚举当前facotry的Bean 不忽略由SingletonBeanRegistry的方法时注册的Singleton Bean
* 不检测无法实例化的Bean(如抽象Bean)
*/
String[] getBeanNamesForType(ResolvableType type); /**
* 同上 String[] getBeanNamesForType(@Nullable Class<?> type);
*
* /** 作用同上 includeNonSingletons:判断是否匹配除Singleton外的其他scope allowEagerInit:
* false只匹配FactoryBean本身,true时还匹配FactoryBean.getObjectType()
*/
String[] getBeanNamesForType(@Nullable Class<?> type, boolean includeNonSingletons, boolean allowEagerInit); /**
* 根据提供的类型返回匹配的Bean实例数组 只检测顶层Bean,忽略嵌套Bean
* 对于FactoryBean,当提供的类型匹配FactoryBean.getObjectType时返回BeanName
* 当提供的类型匹配FactoryBean时返回&BeanName
* 该接口不支持分层结构(对于继承了HierarchicalBeanFactory的BeanFactory来说)
* 也即该接口只能枚举当前facotry的Bean 不忽略由SingletonBeanRegistry的方法时注册的Singleton Bean
* 不检测无法实例化的Bean(如抽象Bean)
*/
<T> Map<String, T> getBeansOfType(@Nullable Class<T> type) throws BeansException; /**
* 作用同上 includeNonSingletons:判断是否匹配除Singleton外的其他scope allowEagerInit:
* false只匹配FactoryBean本身,true时还匹配FactoryBean.getObjectType()
*/
<T> Map<String, T> getBeansOfType(@Nullable Class<T> type, boolean includeNonSingletons, boolean allowEagerInit)
throws BeansException; /**
* 根据提供的注解类型找到对于的BeanName数组, 不创建实例, 但FactoryBean类型将被初始化,因为该方法考虑FactoryBean创建的对象
*/
String[] getBeanNamesForAnnotation(Class<? extends Annotation> annotationType); /**
* 根据提供的注解类型找到对于的Bean实例数组, FactoryBean类型将被初始化,因为该方法考虑FactoryBean创建的对象
*/
Map<String, Object> getBeansWithAnnotation(Class<? extends Annotation> annotationType) throws BeansException; /**
* 根据提供的注解类型和beanNaeme找到对应的Bean,Bean的类类型本身找不到,则遍历它的 接口和超类
* 如果不存在该Bean,则抛出NoSuchBeanDefinitionException 如果该Bean不支持该注解类型则返回null
*/
@Nullable
<A extends Annotation> A findAnnotationOnBean(String beanName, Class<A> annotationType)
throws NoSuchBeanDefinitionException; }
Tornado的更多相关文章
- Python(九)Tornado web 框架
一.简介 Tornado 是 FriendFeed 使用的可扩展的非阻塞式 web 服务器及其相关工具的开源版本.这个 Web 框架看起来有些像web.py 或者 Google 的 webapp,不过 ...
- 使用tornado,我们可以做什么?
以下介绍都是建立在python2.x的基础上面,tornado使用任意版本皆可. 如果我们需要对外提供一个http server(web api)/websocket server时,我们都可以使用t ...
- tornado session
[转]tornado入门 - session cookie 和session 的区别: 1.cookie数据存放在客户的浏览器上,session数据放在服务器上. 2.cookie不是很安全,别人可以 ...
- tornado template
若果使用Tornado进行web开发可能会用到模板功能,页面继承,嵌套... 多页应用模板的处理多半依赖后端(SPA就可以动态加载局部视图),就算是RESTfull的API设计,也不妨碍同时提供部分模 ...
- tornado上手
http://www.tornadoweb.org/en/stable/ http://www.cnblogs.com/fanweibin/p/5418697.html import tornado. ...
- tornado+sqlalchemy+celery,数据库连接消耗在哪里
随着公司业务的发展,网站的日活数也逐渐增多,以前只需要考虑将所需要的功能实现就行了,当日活越来越大的时候,就需要考虑对服务器的资源使用消耗情况有一个清楚的认知. 最近老是发现数据库的连接数如果 ...
- centos 6.7 搭建tornado + nginx + supervisor的方法(已经实践)
首先,本来不想写这篇博客了,但是我测试了很多网上的例子包括简书的,全不行,我总结原因是自己太笨,搞了俩个晚上,后来决定,自己还是写一篇记录下来,保证自己以后使用 环境: centos6.7 64 py ...
- tornado中将cookie值设置为json字符串
不熟悉,找了很久,能FQ的话, https://groups.google.com/forum/#!topic/python-tornado/9Y--NgwjP_w 2楼有解释. tornado.es ...
- tornado 异步调用系统命令和非阻塞线程池
项目中异步调用 ping 和 nmap 实现对目标 ip 和所在网关的探测 Subprocess.STREAM 不用担心进程返回数据过大造成的死锁, Subprocess.PIPE 会有这个问题. i ...
- 离线安装 Python 2.7, paramiko 和 tornado
无非就是离线安装, 步骤比较繁琐, 记录一下. 需求很简单, 一个离线安装的 Python, 能跑 tornado 和 paramiko 1. 离线安装 Python 2.7 .tgz cd Pyth ...
随机推荐
- Python-正则零宽断言及命名捕获(类PHP)
(一)零宽断言 说明:本文的例子使用python描述 首先说明一下什么是零宽断言,所谓零宽断言就是并不去真正的匹配字符串文本,而仅仅是匹配对应的位置. 正则表达式中有很多这样的断言 ...
- postgresql downgrade issue
Q: Dear Support Team, If we use ubuntu server to install postgresql9.4, how can we keep original dat ...
- WCF入门教程三[WCF的宿主]
一.WCF服务应用程序与WCF服务库 我们在平时开发的过程中常用的项目类型有“WCF 服务应用程序”和“WCF服务库”. WCF服务应用程序,是一个可以执行的程序,它有独立的进程,WCF服务类契约的定 ...
- EDIUS分别输出视频和音频的教程
使用EDIUS剪辑好视频之后渲染输出文件时,为什么视频和音频分别出,而不是一起呢?这个问题很可能会让一些新手困惑不已,到底是什么原因呢?又要如何设置才能让输出的文件视音频一体呢?下面,小编将来和大家探 ...
- web.xml中load-on-startup标签的含义
在servlet的配置当中,<load-on-startup>5</load-on-startup>的含义是: 标记容器是否在启动的时候就加载这个servlet. 当值为0或者 ...
- unity, Animation crossfade需要两动画在时间上确实有交叠
unity现在播动画都用Animator了,但公司的老项用的还是Animation,今天遇到一个bug,是两个动画的衔接处不连贯. 最后发现是由于A动画已经播完之后B动画才开始播,而且还用了cross ...
- 递归函数练习:输出菲波拉契(Fibonacci)数列的前N项数据
/*====================================================================== 著名的菲波拉契(Fibonacci)数列,其第一项为0 ...
- js中数组Array的一些常用方法总结
var list = new Array()是我们在js中常常写到的代码,今天就总结一下Array的对象具有哪些方法. list[0] = 0; list[1] = 1; list[2] = 2; 或 ...
- nginx http跳转到https
server { listen 80; server_name www.888.com; location / { #index.html放在虚拟主机监听的根目录下 root /usr/local/n ...
- elipse 调试 反射 invoke 子类
真实案例: 调试一个接口,子类invoke的,结果断点断不到: 查找两个项目间的关联.依赖,无果. 问人吧,结果是配置文件没改成本机: #============================# # ...