您可以使用如下代码根据 Web 服务关闭(或刷新/启动)的时间执行一些事件。
public class APIService implements ApplicationListener<ContextClosedEvent>
{
@Override
public void onApplicationEvent(ContextClosedEvent contextClosedEvent) {
//Do shutdown work.
}
}
有人告诉我,有一种注释驱动的方法可以做到这一点,不需要您实现这个接口。具体来说,您应该能够使用您喜欢的任何名称定义一个函数并对其进行注释,以便它在服务启动或关闭时执行。
不过,我在我的春季书中或通过谷歌找不到对此的引用。有人可以提供一个如何仅通过注释执行上述代码的示例吗?
据,直到...为止Spring 4+ 文档 http://docs.spring.io/spring/docs/4.1.6.RELEASE/spring-framework-reference/html/beans.html#context-functionality-events就您而言,不存在与您描述的完全一样的功能。
您可以使用以下方式模拟行为
@Component // defaults to eager initialization
class Setup {
@Autowired
private ApplicationContext context;
@PostConstruct
public void anyNameYouWant() {
System.out.println("starting");
}
@PreDestroy
public void hereToo() {
System.out.println("closing");
}
}
但您将无权访问ContextClosedEvent
,也不是全范围的ApplicationContextEvent
s.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)