Spring中ClassPathXmlApplicationContext.start()的作用是啥?
context = new ClassPathXmlApplicationContext(configPath.split("[,\\s]+"));
context.start();
上面这代码片段在使用spring的项目中随处可见~
我想知道,第2行调用
start()
的目的是什么?
我总感觉好像启动了线程一样~~应该不是一个意思吧?
颓废的阿飞哥
10 years, 4 months ago
Answers
帮你查了一下文档,做一次文档的搬运工,顺便在SF上刷分=。=
首先,
ClassPathXmlApplicationContext
是从
org.springframework.context.support.AbstractApplicationContext
继承来的。然后追根溯源,我查到了
Lifecycle
这个Interface。
这个
public void start()
方法,就是该接口中声明的方法。该方法的作用在于,启动某个组件,如果该组件已经启动则不抛出异常,如果启动的是某个
container
,则会将启动信号扩散至该容器内部的所有组件。
而
Lifecycle
接口常用来对异步过程进行控制,大部分已实现在Spring框架内部。
幻耀D雅蠛蝶
answered 10 years, 4 months ago