开发者社区 问答 正文

Spring中ClassPathXmlApplicationContext.start()的作用是什么?

`context = new ClassPathXmlApplicationContext(configPath.split("[,\s]+"));
context.start();`
上面这代码片段在使用spring的项目中随处可见~
我想知道,第2行调用start()的目的是什么?
我总感觉好像启动了线程一样~~应该不是一个意思吧?

展开
收起
蛮大人123 2016-02-29 17:46:45 7386 分享 版权
1 条回答
写回答
取消 提交回答
  • 我说我不帅他们就打我,还说我虚伪

    首先,ClassPathXmlApplicationContext是从org.springframework.context.support.AbstractApplicationContext继承来的。然后追根溯源,我查到了Lifecycle这个Interface。
    这个
    public void start()
    方法,就是该接口中声明的方法。该方法的作用在于,启动某个组件,如果该组件已经启动则不抛出异常,如果启动的是某个container,则会将启动信号扩散至该容器内部的所有组件。

    而Lifecycle接口常用来对异步过程进行控制,大部分已实现在Spring框架内部。

    2019-07-17 18:50:43
    赞同 展开评论
问答分类:
问答地址: